Чтобы создать тему неупорядоченного списка, вам нужно вызвать theme_menu_tree (). Вы можете отредактировать ваш template.php, чтобы вызвать это.
function THEMENAME_menu_tree__MENUNAME($variables){
return '<ul class="your-custom-class" id="your-custom-id">' . $variables['tree'] . '</ul>';
}
Затем, если вы хотите создать тематику для своих ссылок, вызовите theme_menu_link ().
function THEMENAME_menu_link__MENUNAME($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 '<li' . drupal_attributes($element['#attributes']) . '>' . $output . $sub_menu . "</li>\n";
}
Теперь проблема с Drupal 7 заключается в том, что существует серьезная ошибка при отображении активного следа пользовательских меню.
См. Выпуск
Проблема № 520106 - Нет способа динамически установить активный след
Проблема № 942782 - Пользовательские меню никогда не получают активный след
Вам в основном не повезло, если вы хотите настоящие пользовательские меню. Эти проблемы очень давно существуют в сообществе друпалов, поэтому я не уверен, будут ли они исправлены в ближайшее время. Я не знаю, есть ли какой-нибудь PHP, который может помочь с этим. Вы можете обратиться к некоторым альтернативным модулям для того , чтобы помочь облегчить functionaltiy, как меню Attributes и меню блок . Они оба могут помочь обойти систему грубого меню в Drupal 7.