Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Templates Drupal 8细枝模板:从URI获取相对或绝对路径_Templates_Drupal_Twig_Drupal 8 - Fatal编程技术网

Templates Drupal 8细枝模板:从URI获取相对或绝对路径

Templates Drupal 8细枝模板:从URI获取相对或绝对路径,templates,drupal,twig,drupal-8,Templates,Drupal,Twig,Drupal 8,我在一个小树枝模板中有一个图像url,如“public://path/to/image.png". 我想获得“sites/default/files/path/to/image.png”以在模板中使用它 我认为它应该和这样的东西一起工作: {{ url ('public://path/to/image.png') }} 或 但我得到的只是错误。我知道第二个是PHP函数,但是有没有机会用TWIG实现呢?在D8中,从“路径”检索页面的URL是不推荐的 编辑: 不,我错了,只是拼错了/ 正确的答案是

我在一个小树枝模板中有一个图像url,如“public://path/to/image.png". 我想获得“sites/default/files/path/to/image.png”以在模板中使用它

我认为它应该和这样的东西一起工作:

{{ url ('public://path/to/image.png') }}


但我得到的只是错误。我知道第二个是PHP函数,但是有没有机会用TWIG实现呢?

在D8中,从“路径”检索页面的URL是不推荐的

编辑:

不,我错了,只是拼错了/

正确的答案是:他们正在进行树枝延伸。 我正在寻找一种方法来获取我的图像uri/URL,并通过
{{node.field\u image[delta].entity.url}

您可以使用细枝函数
文件\u url
获取相对路径:

{{ file_url('public://path/to/image.png') }}
在下签出文档


它接受uri并创建文件的相对路径。至少在Drupal 8.1中是这样。

这给我带来了一个错误<代码>Twig\u Sandbox\u安全错误:在第35行的“themes/ib/templates/layout/html.html.Twig”中不允许对“Drupal\file\Entity\file”对象调用“url”方法。在Drupal\Core\Template\TwigSandboxPolicy->checkMethodAllowed()(Core/lib/Drupal/Core/Template/TwigSandboxPolicy.php的第101行)。这不会删除“public:”,因此会生成无效链接。此解决方案对我有效,谢谢分享!
{{ file_url('public://path/to/image.png') }}