Пропадает блок меню второго уровня при выборе ноды.

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

Аватар пользователя Zigs Zigs 8 августа 2013 в 18:42

Есть двухуровневое меню. Стоит menu_block, чтобы разбить уровни меню на разные блоки, чтобы показывать их на разных сайдбарах. Т.е. в блоке меню первого уровня выбираем пункт, появляется блок второго уровня. Выбираем пункт там и получаем список нод. Далее перехожу на страницу конкретной ноды, в результате блок второго уровня меню почему-то пропадает. Подскажите как с этим бороться?
Спасибо.

Комментарии

Аватар пользователя Zigs Zigs 9 августа 2013 в 13:03

Оказалось, что это проблема не menu_block.
При переходе на страницу не выставляется active-trail для пунктов меню, связанных с выбранной нодой.
Проблема описана тут https://drupal.org/node/942782?page=1, но написано, что же зафиксили, однако у меня по прежнему не работает.

Аватар пользователя Zigs Zigs 9 августа 2013 в 17:25

Кое как разобрался. В общем все работает правильно, проблемы, которую я описал нет. Однако есть другая засада. Чтобы правильно выставлялся active-trail на всех уровнях меню нужно, чтобы нода имела свой собственный пункт в конце иерархии.
У меня есть каталог товаров и двухуровневая иерархия меню каталога, ветка словаря каталога привязана к товару через field. Само меню каталога формируется через taxonomy_menu.
Если каждый товар будет иметь свой пункт меню, то управлять этим меню станет поистине невозможно, ибо оно будет огромным.
Хочется сделать так, чтобы при полном просмотре ноды устанавливать самостоятельно active-trail для кастомного меню к которому привязан товар.
Сделал модуль, там сделал node_view, в котором выбираю tid элемента каталога и формирую путь типа taxonomy/term/tid.
Далее наивно пытаюсь сделать что-то menu_set_active_item(taxonomy/term/tid), однако ничего не происходит.

Подскажите, что не так?