При разработке нового шаблона или темизации текущего, в drupal 8 можно столкнуться с тем, что принцип вывода изображений в шаблоне совершенно изменился. В восьмой версии cms, при создании шаблона нужно следовать кодексу шаблонизатора twig. В начале необходимо зарегистрировать переменную и только потом её вывести в любом месте шаблона. В переменную сразу будет внесён путь к изображению.
Для версии drupal 7 использовался такой метод
<img src='<?php print base_path().path_to_theme()."/logo.jpg"; ?> ' alt="" width="88" height="32" />
Для версии drupal 8 делаем иначе. Добавим в файл MY_THEME.theme следующую функцию:
function MY_THEME_preprocess_node(&$variables) { $variables['facebook'] = '/' .drupal_get_path('theme','MY_THEME'). '/images/facebook.jpg'; $variables['googleplus'] = '/' .drupal_get_path('theme','MY_THEME'). '/images/googleplus.jpg'; }
Были созданы 2 переменные facebook и googleplus. Осталось их вывести в шаблоне.
В шаблоне node.html.twig в нужном месте добавим следующие строчки:
<img src='{{facebook}}' alt="" /> <img src='{{googleplus}}' alt="" />
где пути к изображениям заменяют вышеописанные переменные.
- Войдите, чтобы оставлять комментарии
- 986 просмотров
{{ directory }} выводит путь к текущей теме