[Решено] при открытии материала из Category не подсвечивается пункт меню родителя

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

Аватар пользователя Advanced Advanced 8 июня 2010 в 4:54

Я использую модуль category для структуры сайта, материалы помещены в контейнеры, контейнеры выводят список материалов в них. Category создаёт меню, в которое вносит только контейнеры, при открытом контейнере соответствующая ветка меню развёрнута и подсвечена. Но когда открываю дочерний материал из этого контейнера, ветка меню сворачивается и ни один пункт не подсвечен. Есть ли такие модули которые активизируют родительские пункты меню судя по иерархии из category? Или эту проблему можно по другому решить? Мне надо чтобы в меню были только контейнеры из структуры category, без дочерних материалов.

Комментарии

Аватар пользователя Advanced Advanced 8 июня 2010 в 11:35

День поисков по инету и экспериментов, и в результате workaround: в шаблон определённого материала, который используется category нужно добавить код:

<?php
$parnts 
$node->categories;
foreach(
$parnts as $parnt) {
  
menu_set_active_item('node/' $parnt->nid);
}
?>

и всё работает. важно чтобы этот код не был в шаблоне teaser, иначе будет выделяться не тот пункт меню при просмотре списков (контейнеров)

Аватар пользователя Advanced Advanced 11 июня 2010 в 7:52

Более лучший код:

<?php
if ($page) {
  
$old 'node/' $node->nid;
  
$parnts $node->categories;
  foreach(
$parnts as $parnt) {
    
menu_set_active_item('node/' $parnt->nid);
    break;
  }
  
menu_block('view','menu-main-menu');
  
menu_set_active_item($old);
}
?>