Я потратил несколько дней, пытаясь найти правильный способ сделать следующее:
- Показать список всех терминов верхнего уровня в словаре со ссылками на их дочерние термины
- После нажатия на ссылку, перейдите к списку детей этих терминов.
- До бесконечности до термина самого нижнего уровня, для которого будет отображаться список узлов, помеченных этим термином.
Кажется, что это будет довольно часто необходимая функциональность, но я не могу найти решение, которое может обрабатывать произвольную глубину, особенно если не все деревья терминов спускаются на одну и ту же глубину.
Идеальным решением было бы то, которое использует Views 3, Contexts, EntityFieldQueries или что-нибудь еще, что хорошо поддерживается в Drupal 7.
Я могу сделать почти то, что хочу, создав простое представление с тремя узлами: отношениями терминов (термин, родитель термина и родитель родителя термина) и пользовательские для последовательных контекстных фильтров. Единственная проблема с этим заключается в том, что если есть узел с слишком малой глубиной термопата, он будет указан как «некатегоризованный» и генерирует неработающую ссылку. Вместо того, чтобы делать это, я бы хотел, чтобы он ссылался на следующий доступный термин.
источник
Примечание: вы должны снять галочку «Связать это поле с его страницей терминов таксономии»
Когда вы посещаете страницу просмотра, вы видите детей верхнего родителя; согласно примеру вы получите:
Когда вы нажмете на term1, вы получите детей. Пока вы не достигнете term1.1.1. Если вы нажмете на term1.1.1, вы не получите никакого результата. Чтобы достичь этого, нам нужно создать еще один блок представления в представлении выше.
Примечание. Когда вы удаляете их, убедитесь, что вы выбрали « Эта страница» (Over Ride) из раскрывающегося списка вверху рядом с пунктом «Для полем полем полем противном случае поля и контекстные фильтры, созданные на странице, также будут удалены. ,
Сохраните вид, и все готово.
источник
Я думаю, что вы хотите, чтобы дерево представлений , модуль Contribute, который использует представления для создания дерева терминов таксономии.(Дайте мне секунду, и я напишу краткое руководство по его использованию, чтобы просмотреть налоговые поля)Очевидно, у этого модуля есть проблема, мешающая ему работать с терминами таксономии. Бу.
Тем не менее, я нашел следующий код, который, кажется, делает то, что вы хотите (вы можете заставить его отображать / скрывать элементы через некоторый довольно элементарный код jQuery):
Через « Вложенные списки категорий со ссылками на страницы ».
источник
Если вы просто хотите иметь набор динамических страниц для просмотра таксономии, я бы пошел следующим образом, требуя модуль 3 Views + Taxonomy Display, который позволяет вам использовать Views для отображения содержимого
taxonomy/term/%
страниц:Поскольку представления 1 и 2, вероятно, будут тематически похожим образом, вы можете рассмотреть возможность объединения их в виде дисплеев в одно представление - это было бы проще в управлении.
Я успешно использовал этот подход для моей таксономии. К счастью, он был однородным на каждом уровне - данная ветвь заканчивалась либо листьями (узлами), либо ветвями (членами), но не обоими. Если это будет ограничением, сначала проверьте его.
Конечно, это «псевдокод». Вы хотели бы установить валидации и фильтры, а также симпатичные, логически выглядящие шаблоны патхауто, отражающие структуру.
источник