Столкнулся с такой проблемой в 6 версии друпала (в 5 работало все как надо :)).
Не присваевается класс active для родительского меню, когда находишься в его подменю.
Просмотр документации (http://drupal.org/node/44711) по это вопросу и разобранные там примеры не дали результата
Решил проблему таким образом сделал свою функцию phptemplate_links, код для которой взял из исходной финуции http://api.drupal.org/api/function/theme_links/6, добавив туда следующий код перед формированием самой ссылки т.е. тепед вызовом функции l http://api.drupal.org/api/function/l/6
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 родительскому меню на основе моих аллиасов.
В принцепе все работает
Но есть такое чувство что я что-то упустил, и как то это можно было сделать проще и правильнее
Вопрос как это нужно было делать?
Комментарии
http://api.drupal.org/api/function/menu_get_active_trail/6 ?