Вы здесь

Как для нескольких меню созданных с помощью Menu Block использовать один шаблон?

0

Есть большое меню. Вывожу его частями через Menu Block. Для темизации и переопределения использую стандартные функции

function THEME_menu_tree__menu_block__1($variables)
function THEME_menu_link__menu_block__1(array $variables) 

Но так получается, что каждый новый блок меню надо оформлять новой функцией (даже двумя)

__menu_block__2, __menu_block__3 и т.д.

Наверняка есть решение, которое позволит определить эти функции сразу для всех блоков, типа

__menu_block__1-99

Подскажите, пожалуйста, по синтаксису такого решения.

Версия Drupal: 
7.x
Категория: 
Menu APITheming
Связанные проекты: 
Menu block
Вопрос задан 31.03.2016 - 17:18

Пишите в заголовке суть вопроса. Вопросы без нормальных заголовков будут удаляться.

Комментарий оставлен 31.03.2016 - 18:29

Ответы

0

Логику (Вывожу его частями через Menu Block) в фунцкии темирования по хорошему лучше не вставлять, для этого есть hook_preprocess и hook_preprocess_HOOK.

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

Ответ дан 31.03.2016 - 20:08
-1

В hook_preprocess_menu_tree/hook_preprocess_menu_link добавьте свой theme_hook_suggestions. Пример с полями - http://xandeadx.ru/blog/drupal/409

Ответ дан 31.03.2016 - 18:28
Аватар пользователя xandeadx
xandeadx
1542

Пробовал подцепить через if ($variables['menu_name'] = menu-block-1, но он все меню, созданные через Menu Block определяет как main-menu. Т.е. по названию меню не подключиться.
Как бы узнать, какой модуль создает меню и отталкиваться от этого...

Комментарий оставлен 01.04.2016 - 10:51