Функция file_url($uri)
Возвращает относительный адрес к файлу по его uri. Умеет работать с путями без схемы.
{{ file_url('public://images/example.jpg') }} -> /sites/default/files/images/example.jpg
{{ file_url('/images/example.jpg') }} -> /images/example.jpg
{{ file_url('images/example.jpg') }} -> /images/example.jpg
Функция path($name, $parameters, $options)
Возвращает относительный адрес по роуту.
{{ path('entity.node.canonical', {'node': 123}) }} -> /node-alias
Функция url($name, $parameters, $options)
Возвращает абсолютный адрес по роуту.
{{ url('entity.node.canonical', {'node': 123}) }} -> http://example.com/node-alias
Функция drupal_url($path, $options)
из модуля Twig Tweak
Возвращает относительный или абсолютный адрес по пути. Не умеет работать с uri.
{{ drupal_url('node/123') }} -> /node-alias
{{ drupal_url('/node/123') }} -> /node-alias
{{ drupal_url('node/123', {absolute: true}) }} -> http://example.com/node-alias
{{ drupal_url('/node/123', {absolute: true}) }} -> http://example.com/node-alias
Фильтр file_url($path)
из модуля Twig Tweak
Возвращает относительный адрес по адресу файла. Не предназначен для генерации системных адресов.
{{ 'public://images/example.jpg'|file_url }} -> /sites/default/files/images/example.jpg
{{ '/images/example.jpg'|file_url }} -> /images/example.jpg
{{ 'images/example.jpg'|file_url }} -> /images/example.jpg
{{ 'node/123'|file_url }} -> /node/123
{{ '/node/123'|file_url }} -> /node/123
{{ node.field_image|file_url }} -> /sites/default/files/images/example.jpg
{{ node.field_image[0]|file_url }} -> /sites/default/files/images/example.jpg
Фильтр image_style($path, $style_name)
из модуля Twig Tweak
Возвращает относительный адрес изображения со стилем. Понимает путь без схемы.
{{ 'public://images/example.jpg'|image_style('thumbnail') }} -> /sites/default/files/styles/thumbnail/public/images/example.jpg?itok=cq_mh3N4
{{ 'images/example.jpg'|image_style('thumbnail') }} -> /sites/default/files/styles/thumbnail/public/images/example.jpg?itok=cq_mh3N4
Написанное актуально для
Drupal 8
Добавить комментарий