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

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

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

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

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

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

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

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

Комментарии

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

13 августа 2007 в 14:07

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

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

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

16 декабря 2007 в 14:10

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

16 декабря 2007 в 21:07

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

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

2 января 2008 в 23:34

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

3 января 2008 в 6:59

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

12 февраля 2008 в 13:56
Аватар пользователя aka aka 0

При включении функции "Объединение и сжатие файлов 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

11 мая 2008 в 17:35

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

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

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

7 июля 2008 в 17:05