[РЕШЕНО] Как добавить свой класс в тег <a> пункта меню (нужно для темизации)?

Главные вкладки

Аватар пользователя Rest Rest 31 октября 2014 в 22:32

Меню нужно получить таким

<div class="top-menu-block"><ul>
<li class="menu-link"><a href="" title="" class="myclass">Главная</a></li>
<li class="menu-link"><a href="" title="" class="myclass">Раздел 1</a></li>
<li class="menu-link"><a href="" title="" class="myclass">Раздел 1</a></li>
<li class="menu-link"><a href="" title="" class="myclass">Раздел 1</a></li>
<li class="menu-link"><a href="" title="" class="myclass">Раздел 1</a></li>
<li class="menu-link"><a href="" title="" class="myclass">Раздел 1</a></li>
<li class="menu-link"><a href="" title="" class="myclass">Раздел 1</a></li>
</ul></div>

Требуется в теге <a> прописать свой класс class="myclass". Система добавляет class="active".

Не пойму как здесь определить класс для тега:

<?php 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'], $element['#localized_options']);
  return 
'<li class="menu-link"' drupal_attributes($element['#attributes']) . '>' $output $sub_menu "</li>\n";
}
?>

В друпал новичек.

Комментарии

Аватар пользователя Rest Rest 31 октября 2014 в 23:17

qwinto wrote:
Menu attributes - модуль такой попробуйте

Помогло, спасибо. Только приходится к каждому пункту меню писать класс один и тот же.

P.S. Получается на уровне template.php задачу не сделать или сложно?

Аватар пользователя drupby drupby 31 октября 2014 в 23:53
function mytheme_menu_link__main_menu($variables) {
  $element = $variables['element'];
  $sub_menu = '';

  if ($element['#below']) {
    $sub_menu = drupal_render($element['#below']);
  }
  $element['#localized_options']['attributes']['class'][] = 'myclass';
  $output = l($element['#title'], $element['#href'], $element['#localized_options']);
  return '<li class="menu-link"' . drupal_attributes($element['#attributes']) . '>' . $output . $sub_menu . "</li>\n";
}

Аватар пользователя Rest Rest 1 ноября 2014 в 10:11

drupby wrote:

function mytheme_menu_link__main_menu($variables) {
  $element = $variables['element'];
  $sub_menu = '';

  if ($element['#below']) {
    $sub_menu = drupal_render($element['#below']);
  }
  $element['#localized_options']['attributes']['class'][] = 'myclass';
  $output = l($element['#title'], $element['#href'], $element['#localized_options']);
  return '<li class="menu-link"' . drupal_attributes($element['#attributes']) . '>' . $output . $sub_menu . "</li>\n";
}

Спасибо за помощь. Все работает.