Модуль для настройки breadcrumb и позиции в меню нодов

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

Аватар пользователя edhel edhel 9 августа 2007 в 8:54

Часто надо, чтобы нода определенного типа или определенной категории была привязана к пункту меню. Раньше я для этого делал мини-хаки в hook_nodeapi, а на днях наконец навоял модуль с админским интерфейсом.

С помощью модуля можно создавать правила, которые хранят в табличке. Правило включает: тип публикации, 0-2 термина, пункт меню, вес правила. При просмотре ноды в полном режиме просматриваются все правила и если срабатывает правило, то нода прицепляется к указанному в правиле пункту меню.

Пример использования:

1) Есть тип ноды "проект", созданный в cck. Есть страница"проекты", созданная во views. Эта страница "проекты" находится в меню в разделе "О компании". Если кликнуть в списке проектов на проект, то показывается полная инфа по проекту, но теряется breadcrumb и позиция в меню. Решеение: добавляем правило, чтобы все ноды типа "проекты" попадали в раздел "проекты".

2) Есть тип "новость" и ленты новостей есть в различных разделах сайта (опять же cck+views). Например, новости в разделе "о компании", новости в разделе "партнерам". Для этого для новостей создана таксономия, которая используется при создании view и опять же которую можно использовать для привязки новостей к нужному разделу с помощью этого модуля. В этом случае делаем 2 правила на основе терминов таксномоии и позиция в меню будет правильная при выборе новости из ленты новостей.

ВложениеРазмер
Иконка пакета node_breadcrumb.zip8.66 КБ

Комментарии

Аватар пользователя dm66 dm66 13 августа 2007 в 14:07

Большое спасибо за модуль! Как говориться - то, что нужно!
ИМХО будет полезен многим, так как позволяет избавится от необходимости два раза выбирать принадлежность материала для нормальной навигации (сначала таксономию, потом пункт меню).

Аватар пользователя Skirr Skirr 16 декабря 2007 в 14:10

а есть вариант использовать два отличных друг от друга breadcrumbs?

Один конкретно по одному словарю.
А второй стандартный.

Ну соответсвенно размещённых в template в разных местах.

Аватар пользователя Skirr Skirr 16 декабря 2007 в 21:07

В page.tpl.php $breadcrumb - отвечает за эту навигацию.
Что бы сделать две разных навигации, например одна taxonomy breadcrumb а вторая nodebreadcrumb, что нужно?

Аватар пользователя Zorkiy4 Zorkiy4 2 января 2008 в 23:34

Изящное решение проблемы! Спасибо огромное!)

P.S. Последняя версия модуля у вас обозначена как RC1. Это говорит о наличии каких-то недоработок? Можно ли использовать модуль на рабочих проектах?

Аватар пользователя edhel edhel 3 января 2008 в 6:59

Багов не замечено. Основная недоработка в том, что нельзя изменять правила — только удалять и создавать новые.

Аватар пользователя валенок валенок (не проверено) 12 февраля 2008 в 13:56

а можно заставить модуль реагировать на Localization?? чую, что надо копать в сторону Additional PHP condition, а какое условие проверки применить - не пойму.

Аватар пользователя aka aka 11 мая 2008 в 17:35

При включении функции "Объединение и сжатие файлов CSS":

warning: file_get_contents(sites/all/modules/node_breadcrumb/node_breadcrumb.css) [function.file-get-contents]: failed to open stream: No such file or directory in /home/e38/e38.nichost.ru/docs/includes/common.inc on line 1523.

Это 5.x-2.0-rc2

Аватар пользователя villy villy 7 июля 2008 в 17:05

Спасибо за модуль!

Насколько я понял он по типу ноды выводит нужный breadcrumb.
А например, новости в разделе, у которых нет персонального пункта меню, но есть обобщающий пункт раздела, он делает активным?

На быструю руку опробовав данный модуль этого не увидел. Может что не правильно делаю?