Доброго дня уважаемое сообщество. Возникла проблема решение которой так и не нашел (смотрел api, искал в поисковиках, пытался решить самостоятельно). Посмотрите, что может быть не так, пожалуйста.
Суть. Имеется главное меню на сайте (main menu). В настройках темы оно отключено, вывожу через блок (т.е. системным методом через админ. панель). Хочу его кастомизировать (т.е. сменить вывод верстки).
В template php прописал следующий код. Здесь переопределил вывод всех меню и отдельно main_menu. Работает только смена всех меню и внешнее оформление Mulder_menu_tree__main_menu. Не работает Mulder_menu_link__main_menu. Результатом его работы является строка array. Все. (т.е. на странице мы имеем: ul class="menu">Array
array(
'render element' => 'tree',
),
// переопределяем шаблон menu_link
'menu_link' => array(
'render element' => 'element',
),
// добавляем шаблон menu_tree для меню Mainmenu
'menu_tree__main_menu' => array(
'render element' => 'tree',
),
// добавляем шаблон menu_link для меню Mainmenu
'menu_link__main_menu' => array(
'render element' => 'element',
),
);
}
function Mulder_menu_tree($variables) {
return 'БЛАБЛАБЛА
';
}
function Mulder_menu_link(array $variables) {
$element = $variables['element'];
$sub_menu = '';
if ($element['#below']) {
$sub_menu = drupal_render($element['#below']);
}
$output = l($element['#title'], $element['#href'], $element['#localized_options']);
return '
\n";
}
function Mulder_menu_tree__main_menu($variables) {
return 'Шаблон menu_tree__main_menu
';
}
function Mulder_menu_link__main_menu(array $variables) {
$element = $variables['element'];
$sub_menu = '';
if ($element['#below']) {
$sub_menu = drupal_render($element['#below']);
}
$output = l($element['#title'], $element['#href'], $element['#localized_options']);
return '
\n";
}
?>
Комментарии
Что нужно получтить в итоге? Просто сменить внешний вид главного меню?
Не совсем, я хотел разобраться как можно менять вывод любого меню на сайте независимо от других. Во общем, ушло около 6 дней, никто не знал в чем может быть проблема к.т. у всех работал такой метод. У меня, к стати, также заработал после того как я сменил тему. Почему-то, конкретно в этой теме, механизм кастомизации не работал.