我从 Drupal 8 开始,我想在我创建的内容中获取照片的 url 以显示它们。上下文是:为客户上传一张照片。该客户可以在页面上看到它。为了共同获取这些数据,我为我的拍摄创建了一个带有 id 的内容。我所做的是:$photos = $shooting->field_shooting_photos->target_id;这使我可以获取上传的每张图片的 id。现在我想在我的 .module 中对 $photos 做一个 foreach ,它将返回数组中的每个 url。然后我将在我的 Twig 中使用这个数组并在它上面做一个 foreach 来返回每张照片。我只是不知道该怎么做,我想我将不得不使用类似的东西$path = $photo_id->getFileUri();但我无法弄清楚将其放入数组的语法。谢谢您的帮助!
1 回答
梦里花落0921
TA贡献1772条经验 获得超6个赞
如果你只有一个fid,你需要加载文件。
use \Drupal\file\Entity\File;
$fid = 123; // Your fid
$file = File::load($fid);
从那里,您可以使用getFileUri方法获取 URI。如果要获取完整的 URL,可以使用file_create_url函数。
$uri = $file->getFileUri();
// You get : public://directory/file.jpg
$url = file_create_url($uri);
// You get : http://mywebsite.com/sites/default/files/directory/file.jpg
- 1 回答
- 0 关注
- 116 浏览
添加回答
举报
0/150
提交
取消