Как показать термины в представлениях в их иерархической структуре?

20

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

Я установил мнение:

Формат: список HTML

Показать: поле

Поля: Термин таксономии: Имя

Работает нормально, но иерархическая структура потеряна.

Словарь продуктов имеет следующую структуру:

- Автомобили

--Ford

--Volvo

- компьютеры

--Desktop

--Laptop

Но в представлениях термины потеряли иерархическую структуру и перечислены как:

- Автомобили

-Ford

-Volvo

- компьютеры

-Desktop

-Laptop

Что мне здесь не хватает ??

chefnelone
источник

Ответы:

16

Я бы порекомендовал вам попробовать модуль дерева представлений, который устанавливает плагин в стиле дерева (смежность), который позволяет иерархически составлять список слов.

Комментарий: Предварительный просмотр просмотров не показывает макет дерева, но при обычном отображении страницы выводится как дерево.

Артур
источник
2
Как: drupal.org/node/1493366
Андрей Руденко
12

Дерево представлений хорошо для быстрой и простой конфигурации иерархии, но в ней отсутствуют некоторые функции, такие как разные поля / конфигурация для разных уровней дерева и группировки

Вы можете получить более гибкую настройку с помощью View Field View .

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

  1. Создать представление терминов с отображением страницы (или любым другим отображением)
  2. Добавить отношение "Термин таксономии: родительский термин"
  3. Добавить поле: Имя термина (без связи), Имя термина (Родительское отношение, исключено из отображения)
  4. Добавить фильтр Таксономия термин: родительский термин (родительские отношения) равен 0. (показать только уровень 2)
  5. В настройках формата используйте группирование с полем (Родитель) Имя термина. (Для отображения уровня 1)
  6. Добавить новый дисплей (вложение хорошо)
  7. Переопределите его поля (просто щелкните любое поле, выберите это вложение (переопределено) в поле выбора вверху, а затем сохраните поле (чтобы избежать рекурсии)
  8. Переопределите вложение. Контекстные фильтры, добавив термин Таксономия: Имя (Родительское отношение).
  9. Добавьте поле просмотра (Global: View) в поля просмотра.
  10. Используйте вложение в конфигурации поля представления и добавьте токен для имени термина (а не родителя) в качестве значения контекстного фильтра, отправляемого во вложение.

Вы можете удалить отношение из фильтра на шаге 4, при этом верхний уровень будет отображаться на главном экране, поэтому вы можете пропустить группировку (шаг 5), а затем добавить новый дисплей для каждого уровня, который хотите отобразить (контрольный номер уровней). для отображения)

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

Махмуд Мостафа
источник
4

Я решил аналогичную задачу с помощью модуля меню Таксономия .

Превратите любой из ваших слов таксономии в существующие меню легко!

Функции:

  • Пользовательское меню для словаря
  • Использует условия Путь по умолчанию
  • Интеграция с представлениями
  • Интеграция с Path Auto
  • Настройте путь к меню с помощью хуков: Документация разработчика для версии 6.x-2.x
  • Это не мешает другим модулям меню
Петр Лозовицкий
источник
Я рекомендую не использовать этот модуль, если вы хотите создать сайт i18n. Это делает большую проблему в этом случае.
считают
Можете ли вы описать, в частности, какие проблемы этот модуль имеет для сайта i18n? У меня не было проблем с интернационализацией с этим модулем.
Петр Лозовицкий
Если у вас есть таксономия i18n и меню i18n, вы не сможете правильно его запустить. Об этом вы можете прочитать даже на сайте проекта модуля. Там нет поддержки для этого.
считают
3

Если у вас есть только дерево категорий на 2 уровня, и вы не против потерять вложенный формат или взломать файлы тем, вы можете получить такую ​​функциональность, выполнив следующие действия:

  1. Добавление отношения «Родительский термин» в представление и его требование.
  2. Имеет два поля «Term Name». Один без отношения, а другой скрытый от поля отображения, используя вновь созданные отношения.
  3. Используйте скрытое поле в качестве поля группировки.

Не уверен, что это было именно то, что было задумано ...

mariomc
источник
это хорошая попытка, но не совсем то, что мне нужно.
Chefnelone
1

В Views Hacks есть подмодуль views_summary_taxonomy, который, кажется, делает то, что вы ищете:

«Он отображает иерархическую сводку терминов таксономии в результатах просмотра».

http://drupal.org/project/views_hacks#views_summary_taxonomy

robydago
источник