需要使活动菜单项在 Drupal 7 主题中突出显示,为此您需要设置active标签类<li>而不是<a>. 出于某种原因,我无法更改 CSS。我正在尝试这样做theme_preprocess_menu_link():
function mytheme_preprocess_menu_link (&$variables) {
$element = $variables['element'];
$attributes = $element['#attributes'];
$attributes['class'] = array_unique($attributes['class']);
$classes = $attributes['class'];
if (in_array('active-trail', $classes) || ($element['#href'] == '<front>' && drupal_is_front_page())) {
$element['#attributes']['class'][] = 'active';
}
}
function mytheme_menu_link__main_menu ($variables) {
$element = $variables['element'];
$sub_menu = '';
if ($element['#below']) {
$sub_menu = drupal_render($element['#below']);
}
$output = l($element['#title'], $element['#href']);
return '<li' . drupal_attributes($element['#attributes']) . '>' . $output . $sub_menu . "</li>\n";
}
没有结果 - 和以前一样,此类仅设置为标签a。请告诉我如何正确添加课程。
通过分配
$element参考解决了问题: