2014-10-08 3 views
0

У меня в шаблоне твиста есть URL-адрес изображения, например «public: //path/to/image.png». Я хочу получить «sites/default/files/path/to/image.png», чтобы использовать его в шаблоне.Drupal 8 Twig Шаблон: получить относительный или абсолютный путь от URI

Я думал, что он должен работать с чем-то вроде этого:

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

или

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

Но я получаю ошибки. Я знаю, что второй - это PHP-функция, но есть ли шанс сделать это с TWIG?

ответ

0

Извлечение URL-адреса страницы из «пути» устарело в D8. https://www.drupal.org/node/2073811

EDIT:

Ны им неправильно и просто missunderstood орфографии;/

правильный ответ: они работают над расширением веточки. я искал способ получить мои изображения/URI URLs и достиг его {{node.field_image [дельта] .entity.url}}

+0

Теперь это вызывает ошибку для меня ... 'Twig_Sandbox_SecurityError: вызов метода« url »в объекте« Drupal \ file \ Entity \ File »не разрешен в« themes/ib/templates/layout/html.html ». twig "в строке 35. в Drupal \ Core \ Template \ TwigSandboxPolicy-> checkMethodAllowed() (строка 101 ядра/lib/Drupal/Core/Template/TwigSandboxPolicy.php). – Nick

+0

Начиная с 8.0.2' node.field_image. Ури делает трюк. –

1

Вы можете использовать функцию прутого file_url, чтобы получить относительный путь:

Оформить документацию под https://www.drupal.org/node/2486991

Он принимает Ури и создает относительный путь к файлу. По крайней мере, в Drupal 8.1.

+0

Это не приведет к удалению «public:», поэтому он создает неверную ссылку. – Floyd