Views2 + Taxonomy menu + вывод нод таксономии через Views в Drupal 6.*

16 февраля 2011 в 15:49
Аватар пользователя zakraben zakraben 0 25

Требовалось:
К сайту прикрутить небольшую доску объявлений. Объявления сортируются по категориям таксономии, соответственно должен быть рубрикатор-меню из таксономии и вывод через views. На момент создания сайта версия движка Drupal 6.20
Вывести ноды таксономии через views не составило труда. Для этого я создал представление такого типа:

Обратить внимание следует на "Аргументы" и "Адрес".

В "Аргументах" нужно указать Term ID для фильтрации по терминам таксономии вот таким образом:

В "Адрес" вносим адрес отображения наших материалов.У меня примерно так:
advertisement/rubrics/%
Этот путь нужно запомнить для дальнейших манипуляций.
Поля и остальные фитчи по вкусу добавляйте (сколько выводить, по каким критериям, с пейджером или без и т.д.)

Итак вывод материалов таксономии в принципе готов. Теперь можно и создать менюху с терминами из словаря таксономии.
Можно пойти 2 путями:
1. Через тот же views
2. Через модуль taxonomy menu
Вариант первый для меня показался нудным и заковыристым (ИМХО), ибо темизировать потом блок с таксономией "под меню" с коллапсом родительских терминов - это головняк.
Вариант второй более удобный как по времени так и по результату.

Итак, приступим. Скачали модуль taxonomy menu. Установили. Активировали в "Модулях". Создали необходимый словарь с терминами в "Таксономи" (родительские и дочерние)
У меня словарь такого плана:

Агрохимикаты
|--- Покупка
|--- Продажа
Зерновые
|--- Покупка
|--- Продажа

и т.д.

Лезем в раздел "Меню" и создаем новое меню, назвал я его "Рубрики". Сохраняем. Пункты не добавлять!
Далее переходим в "Таксономию", находим созданный словарь жмакаем "изменить словарь". Переходим и видим картину, что внизу появилось нечто под названием "Taxonomy menu".
Здесь нет ничего сложного, нужно лишь правильно настроить отображения именно для нашего созданного представления Views.
В выпадающем списке "Menu location:" находим наше меню <Рубрики>
В "Menu path type:" нужно выбрать "Custom path"!
Далее во вкладке "Options" оставляем все поля пустыми кроме "Base path for custom path:" вот сюда и вписываем путь из нашего представления Views вспомните "advertisement/rubrics/%".
Вот это мы и вносим в поле "Base path for custom path:" НО! без "/%" тоесть в поле должно быть просто "advertisement/rubrics"!
Сохраняем.

Теперь можете посетить свое меню "Рубрики" и настроить пункты как вам удобно(свернутые развернутые и т.д.).
Смело шагаем в "Блоки" находим там блок для вашего меню и настраиваем как душе (или заказчику) удобно!
Что осталось, да в принципе темизировать вывод Views через стандартные шаблоны.

Спасибо за внимание.

Комментарии

статья очень кстати.. Получилось настроить, но есть проблемка. При открытии материала хотелось бы чтобы меню оставалось развернутым именно в той категории из которой данный материал. Есть решение?

17 февраля 2011 в 12:28

http://legionagro.com.ua/advertisement/rubrics/1 - вот посмотри блок меню развернут по категории
Прежде всего нужно сделать в таксономии иерархию правильную. Потом в самом меню снять галки с "Развернуто" родительских категорий.
Ну и вообще в сторону меню ковырять.

17 февраля 2011 в 22:21

Ну да, с этим всё в порядке как раз. Я имел в виду, что если например открыть http://legionagro.com.ua/advertisement/kuplyu-zerno-klassa-lyuks - то меню сворачивается ведь. А вот как его оставлять открытым я хз.. ничего пока не нашел. Думал может есть модули уже какие-то.. кто знает?

17 февраля 2011 в 22:33

Вот к примеру http://content-management-systems.info/drupal/api/6/file/aggregator-wrapper.tpl.php — как раз то что нужно. Но интересно как это реализовать.

Кстати, по поводу views+taxonomy_menu+pathauto+exposed_filters — это вообще головная боль. У меня так и не вышло заставить все это разом работать. Вроде бы работает, но когда начинаешь все тестировать, фильтры переключать оказывается что работает все через одно место. Решил пока оставить все адреса по id через views.

18 февраля 2011 в 21:34

Обязательно с Views2? Начал было делать с Views (т.е. Views 1, а не Views2). Начало глючить - в меню добавляется несколько раз ссылка на головную таксономию.

Drupal 6.14

3 марта 2011 в 10:09

muxoh wrote:
Обязательно с Views2? Начал было делать с Views (т.е. Views 1, а не Views2). Начало глючить - в меню добавляется несколько раз ссылка на головную таксономию.

Drupal 6.14


Я вообще вьху в деве ставлю обычно(но не советую этого делать), 6.14 - ну как бы старенький уже ))))

2 сентября 2011 в 2:49

murtahan wrote:
А как быть с седьмым друпалом? Там в настройках нет custom path..

Я пока №7 не беру во внимание, уж горький опыт с ним...

15 сентября 2011 в 10:00

"veter1206" wrote:
Глупый наверно вопрос(
А если нет пункта Taxonomy Term ID from URL...
откуда его взять?

покажите скришот,где этого пункта у вас нет .

6 ноября 2011 в 16:49

"veter1206" wrote:
Таксономия: Term ID
Также пробовала Term ID (with depth) и Term ID depth modifier, этого пункта нигде нет(((

а версия views?

6 ноября 2011 в 23:43

"DennisVV" wrote:
6.x-2.14

в самой статье рассматривается такая же версия со скриншотами -видимо делаете что то не так или таксономия у вас не включена

7 ноября 2011 в 11:14