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

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

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

Описание

Модуль Menu position позволяет устанавливать активный пункт меню в зависимости от текущего адреса. Это альтернатива модуля Menu Trails (которого кстати нет под Drupal 7).

Установка

Процесс стандартный — распаковать в sites/all/modules, включить.

Использование

Допустим есть следующее меню:

— Новости компании (адрес example.com/news)
— О компании (адрес example.com/about)
— Контакты (адрес example.com/contact)

Так же есть тип материала Новость с шаблоном адресов news/[node:title].

Задача — при просмотре полной версии новости сделать активным пунктом меню, пункт Новости компании.

Решение — открываем страницу admin/structure/menu-position и добавляем новое правило:

Административный заголовок — Выделение пункта при просмотре новостей
Типы материалов — Новость
Страницы — news/*

Страница модуля Menu position

Всё :). Теперь при просмотре любой страницы с адресом, начинающемся на news/, пункту меню Новости компании будет добавляться класс active-trail.

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

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

добавлю в список обязательных модулей для проектов на д7

Почему-то в путь по сайту breadcrumbs подставляется надпись (menu position rule) вместо заголовка страницы.. че с этим делать?...

А если у меня представление с адресом news, и я прописываю правило для пункта меню новости, то модуль не работает. Т.е. это будет работать, только при просмотре ноды?

Т.е. это будет работать, только при просмотре ноды?

нет

подтверждаю, с вьюсами не работает. по крайней мере в моей теме

модуль работает с меню. с views или без ему всё равно

начал морочиться установка, а сам использую http://drupal.org/project/superfish
там и так это есть...)))

Привет!!! А что делать если у меня друпал 7.10, ведь модулю нужен 7.11 обновится не вариант сайт еще локально, да и после обновления у многих друпал моросит поэтому и не рискую!!!

скачайте версию, которая подходит для drupal 7.10

Такой версии нет, решил проблему обновлением. Спасибо за ответ!

Теперь новая проблема! У меня он не работает. Думаю потому что у меня два разных меню. При нажатии по ссылке на главном меню у меня в блоке выводится другое меню, соответственно у меня нет такое связи как news/.
Люди что делать в таком случае, помогите пожалуйста!!!!

Решил проблему, после сброса кэша, появился класс active - trail.
Спасибо большое за статью, как не хватает такого простого и понятного по друпалу.

Странные момент, у меня под пунктом меню, который должен быть выделен, появляется ещё один пункт меню с названием страницы на которой я сейчас. Как можно это исправить?

в настройках — admin/structure/menu-position/settings

Подтверждаю, с представлениями не работает, с нодами без проблем.

Для отображения во views, использующих словари таксономии, используйте модуль Menu position vocabulary

Здравствуйте. Скажите пожалуйста, почему срабатывает только для первого пункта меню, для остальных не работает?

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

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

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