Добавление своих suggestion в Drupal 9/10

Для добавления suggestions требуется использовать соответствующий группе шаблонов hook. Если название шаблона не известно, то его можно подсмотреть в режиме отладки.

Режим отладки и локальная конфигурация

Режим отладки twig включается в настройках сервисов. И обычно /sites/default/default.services.yml не меняют для внесения настроек дебаггера, а создают дополнительно файл /sites/development.services.yml, который подключается через настройки сайта. Опять же /sites/default/settings.php не трогают для этого, а создают файл с локальными настройками, вроде /sites/default/settings.local.php.

Теперь всё по порядку.

Добавляем в /sites/default/settings.php подключение локальных настроек:

Создаём файл /settings.local.php куда прописываем подключение настроек сервисов:

А вот здесь уже нужно добавить настройки twig:

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

Где взять имя шаблона

Все предыдущие манипуляции проделаны не зря, т.к. они включают вывод дополнительной информации прямо в шаблон.

Теперь открыв HTML код страницы, вы увидите секции комментариев перед каждым шаблоном.

THEME_HOOK — как раз то, что нам нужно. Тут же вы увидите имена известных drupal шаблонов. Используемый в текущий момент — помечен крестиком.

Для добавления своих имен нужно создать хук вида:

Останется только подставить переменные THEME_NAME и THEME_HOOK, ну и определиться с именем добавляемого шаблона(-ов).

Мало букафф? Читайте есчо !

Корзина не пуста - изменим стиль пункта меню

Август 2, 2023 г.

Использую Drupal Commerce, и в меню у меня есть пункт "Корзина", со ссылкой на корзину пользователя. Хочется, чтобы стиль пункта меню менялся, если корзина не пуста. Я буду использовать hook_preprocess_menu темы, чтобы изменить нужный пункт меню ...

Читать

Создание контроллера для скачивания файла в Drupal

Сентябрь 6, 2023 г.

Пример кода, реализующий endpoint скачиваемого файла. [crayon-69cb2dd6b35a3668168990/] Кроме контроллера, вам потребуется еще задать маршрут. Пример описания маршрута: [crayon-69cb2dd6b35aa564315486/]

Читать

Транслитерация имени файла при создании медиа entity программно в Drupal

Май 21, 2023 г.

При импорте изображений возникает задача транслитерации. Картинки, например, могут содержать буквы национальной кодировки (кириллицы) и/или иметь несовместимые с файловой системой сервера символы. Drupal (начиная с 8.2) объявляет специальный интерфейс, ...

Читать

Используем токены для доступа к полям параграфов в Drupal

Май 2, 2024 г.

Пара примеров о том, как вытащить нужную инфу из параграфов, используя токены. Обычно это нужно для генерации meta заголовков страницы. У вас есть node, в которой вы создали поле field_myfield с entity_reference: paragrpahs. Самое простое, ...

Читать
 

Комментарии к «Добавление своих suggestion в Drupal 9/10»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: