Активное верхнее меню

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

Аватар пользователя vitall vitall 2 апреля 2008 в 11:12

Столкнулся с такой проблемой в 6 версии друпала (в 5 работало все как надо :)).
Не присваевается класс active для родительского меню, когда находишься в его подменю.
Просмотр документации (http://drupal.org/node/44711) по это вопросу и разобранные там примеры не дали результата Sad
Решил проблему таким образом сделал свою функцию phptemplate_links, код для которой взял из исходной финуции http://api.drupal.org/api/function/theme_links/6, добавив туда следующий код перед формированием самой ссылки т.е. тепед вызовом функции l http://api.drupal.org/api/function/l/6

// uplevel active
if (isset($link['href']) && (drupal_get_path_alias($_GET['q']) == stristr(drupal_get_path_alias($_GET['q']), drupal_get_path_alias($link['href'])))) {
  if (isset($link['attributes']['class'])) {
    $link['attributes']['class'] .= ' active';
  }
  else {
    $link['attributes']['class'] = 'active';
  }
}

который добавляеть атрибут active родительскому меню на основе моих аллиасов.
В принцепе все работает Smile
Но есть такое чувство что я что-то упустил, и как то это можно было сделать проще и правильнее Smile
Вопрос как это нужно было делать?

Комментарии