Программный рендер меню в Drupal 9

Продолжаю публиковать сниппеты кода для drupal 9, на этот раз несколько полезных вещей, связанных с рендерингом меню.

Рендер меню по известному id меню

Вы знаете идентификатор, вам нужен рендер:

Рендер с использованием нужного шаблона

Вы хотите подменить шаблон при рендеринге, тогда его имя нужно указать перед выполнением функции render().

Но сначала нужно создать какой то кастомный шаблон. Дефолтовым считается шаблон /core/modules/system/templates/menu.html.twig, его можно использовать как отправную точку для ваших модификаций. Допустим, вы создали на его базе файл с именем menu—custom.html.twig, тогда предыдущая версия кода изменится следующим образом:

Использование active trail

Чтобы меню подсветило навигацию до текущей страницы, необходимо правильно подготовить параметры на этапе инициализации дерева меню.

Данные об активной цепочке в меню предоставляются службой ‘menu.active_trail‘.

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

Настраиваем стили в CKEditor / Drupal 9

Сентябрь 11, 2021 г.

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

Читать

Подготовка строки для использования в качестве имени html класса

Январь 18, 2022 г.

То, что в семерке выполняется функцией drupal_html_class(), в Drupal 8 реализовано в виде статического метода\Drupal\Component\Utility\Html::getClass($str). Данная функция также востребована в шаблонах (twig). Здесь вы можете использовать фильтр ...

Читать

Превышение лимитов памяти при запросе перевода в модуле tmgmt

Октябрь 1, 2024 г.

Это проблема рекурсии при сборе информации о статье. Модуль сканирует ссылочные поля (reference entity fields) и может попасть в своеобразную рекурсивную петлю. К примеру, статья ссылается на параграф, а тот ссылается на эту же статью. Т.к. глубина ...

Читать

Conditional Form Fields в Drupal

Сентябрь 27, 2021 г.

Логика полей или условные поля - это удобная фича в Form API друпал. Она позволяет формализовать кучу мелкой логики на фронт-енд, связанной с взаимодействием пользователя с вашей формой. Здесь я приведу пару примеров использования, а углубиться ...

Читать
 

Комментарии к «Программный рендер меню в Drupal 9»

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



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