xandeadx.ru Блог музицирующего веб-девелопера

Drupal → Модуль Taxonomy Menu Trails — установка активного пункта меню при просмотре нод, на основе таксономии

Опубликовано в

Taxonomy Menu Trails это довесок для модуля Taxonomy Menu, который выделяет активный пункт меню при просмотре материала, руководствуясь таксономией.

Например есть словарь Разделы, и созданное на основе этого словаря меню:

Термины в словаре 'Разделы' Меню 'Разделы'

Проблема, которую решать модуль Taxonomy Menu Trails, заключается в том, что при просмотре разделов, активный пункт меню выделяется, а при просмотре материала уже нет. К тому же при просмотре материала меню схлопывается:

Просмотр раздела 1 Просмотр подраздела 1.1 Просмотр ноды из подраздела 1.1

Установка и настройка

  1. Скачиваем модуль
  2. Распаковываем в sites/all/modules
  3. Включаем модуль Taxonomy Menu Trails на странице admin/build/modules
  4. Идём на страницу настроек модуля admin/settings/taxonomy-menu-trails и выбираем тип материала, для которого нужно устанавливать активный пункт меню (скриншот).
  5. Модуль почему-то не добавляет для ссылки меню класс active, но зато добавляет класс active-trail для элемента li, поэтому в css нужно продублировать стиль для активных ссылок, например: li.active-trail > a { color:#000000; }

Результат:

Выделенный пункт меню при просмотре материала

Написанное актуально для Taxonomy Menu Trails 6.x-1.0
Похожие записи

Комментарии RSS

поэтому в css нужно продублировать стиль для активных ссылок, например:
li.active-trail > a { color:#000000; }

Подскажите где бы это могло быть?

что "это"?

В какой именно css-файл добавлять стили для Taxonomy Menu Trails?

в тот, что используется в текущей теме

А для 7-ки тестили, смотрели? страница настроек модуля я что то не нашел...

в настройках типа материала и соответствующего term reference поля

У меня проблема с вложеностью больше 3-х.
До четвертого уровня отображается все отлично, а дальше - как будто совсем без этого модуля.
Как решить эту проблему?

напишите разработчику

А как убрать ссылку для текущей страницы ?

Оставить только имя пункта.

Поясните, пожалуйста, что такое term reference поля

А для 7-ки тестили, смотрели? страница настроек модуля я что то не нашел...
----в настройках типа материала и соответствующего term reference поля

Можно без модуля Taxonomy Menu попатчить, если ссылка из ноды есть на термин

function mymodule_node_view_alter(&$build) {
if ($build['#bundle'] == 'good' && isset($build['body'])){
$tid = $build['body']['#object']->field_catalog['und']['0']['tid'];
menu_tree_set_path('menu-catalog', 'taxonomy/term/'.$tid);
menu_set_active_item('taxonomy/term/'.$tid);
}
}

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании