Блок меню core модуля menu позволяет вывести всю иерархию меню полностью, но иногда требуется показать только 1-2 верхних уровня. Посмотрим как организовать такой вывод.
Drupal в модуле menu использует функцию menu_tree(‘ИМЯ МЕНЮ’), чтобы рендерить нужное меню в блоке. Глубину обхода дерева здесь нельзя задать. Но та в свою очередь вызывает функцию menu_tree_page_data($menu_name, $max_depth = NULL, $only_active_trail = FALSE), где второй параметр — то, что нам нужно.
Пример вывода верхнего уровня главного меню:
|
|
$tree = menu_tree_output(menu_tree_page_data('main-menu', 1)); print render($tree); |
Осталось вставить это в шаблон, или оформить как свой блок и использовать вместо штатного блока меню.
Drupal 7
Данная запись опубликована в 25.03.2019 15:05 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 22, 2021 г.
Проявляется как не прогружающиеся wysiwyg редактор (ckeditor, например) или элементы поля, обрабатываемые модулем media, при добавлении параграфа (entity модуля parapraphs). Это по-крайней мере два примера с которыми я лично сам сталкивался.
Характерно, ...
Читать
Апрель 16, 2020 г.
Если запуск Cron в Drupal 7 постоянно выдаёт такую ошибку - "Cron run failed.", как исправить ситуацию?
Подобная статья у меня уже была, но посвященная аналогичной проблеме в Drupal 6.
Решение точно такое же - нужно удалить из базы данных ...
Читать
Август 29, 2022 г.
При обновлении модуля s3fs с ветки 7.x-2.x -> 7.x->3.x друпалу не удаётся найти указанный класс. Все необходимые шаги по апгрейду сделаны, как описано в readme.txt модуля.
Это проблема инициализации библиотеки awssdk в s3fs_libraries_info(). Drupal ...
Читать
Апрель 13, 2021 г.
Рассмотрим технику того, как выполнить node_save во время hook_node_insert.
Проблема в том, что во время данного хука мы еще находимся в транзакции и выполнить сохранение ноды прямо тут коде функции - не получится. Т.е. следующий код работать не ...
Читать