Стилизация меню. Добавить всем ссылкам меню уникальный id

Drupal: 

Если нужно выделить кнопку Заказать или ссылки на отдельные разделы сайта, тогда этим пунктам должны быть прописаны свои стили CSS. Следующий хук в теме добавляет уникальные id всем пунктам всех меню сайта. После этого можно узнать id пункта меню и задать ему свойства в CSS файле.

Хук _menu_link() добавляет id всем элементам всех меню. Если нужно ограничить только одним меню, добавьте проверку в начало кода.

  1. /**
  2. * Add unique class (mlid) to all menu items.
  3. */
  4. function MYTHEME_menu_link(array $variables) {
  5. $element = $variables['element'];
  6. $sub_menu = '';
  7.  
  8. $element['#attributes']['class'][] = 'menu-' . $element['#original_link']['mlid'];
  9. if (
  10. $element['#below']) {
  11. $sub_menu = drupal_render($element['#below']);
  12. }
  13. $output = l($element['#title'], $element['#href'], $element['#localized_options']);
  14. return '<li' . drupal_attributes($element['#attributes']) . '>' . $output . $sub_menu . "</li>\n";
  15. }