Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll
05/05/2020, by maria

Многие разработчики предпочитают хранить коды верхнего / нижнего колонтитула в отдельном файле и вызывают файл в page.html.twig

Процесс

Допустим, вы создали следующий файл в папке вашей темы для заголовка:

THEME_NAME/templates/includes/header.html.twig

И теперь вы хотите включить этот файл в:

page.html.twig

Рекомендуемый метод

Правильный метод для тем Drupal 8 состоит в том, чтобы использовать пространства имен Twig для объявления каталога "templates" текущей темы. Вот пример:

{% include '@THEME_NAME/includes/header.html.twig' %}

Ниже приведен пример из рабочей темы на Drupal.org, которая называется Architect.
«@architect» относится к /templates в каталоге рабочей темы (architect).

{% include '@architect/includes/header.html.twig' %}

Пространство имен Twig создается в Drupal 8 автоматически при установке вашей темы и указывает на каталог /templates вашей темы. По сути, написание «@theme_name» во включении Twig (как указано выше) будет ссылаться на местоположение «your_site.com/themes/theme_name/templates» на вашем сервере.

Не рекомендуемый метод

Один из возможных (но не рекомендуемых) методов - использовать приведенный ниже код для включения этого файла.

{# NOT recommended #}
{% include directory ~ '/templates/includes/header.html.twig' %}

Приведенная выше информация может работать, однако она приведет к ошибке сервера при использовании с подтемой.

Расширение функциональности пространства имен

Модуль компонентов библиотеки компонентов обеспечивает более гибкую и сложную организацию шаблонов twig в Drupal 8, которая может работать с twig "embed"

Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.