Вывод нужного уровня таксономии в views

Аватар пользователя leha373 leha373 12 декабря 2019 в 0:57

Привет
Помогите.Есть словарь
термин1
-термин1.1
-термин1.2
-термин1.3
термин2
термин3
-термин3.1
-термин3.2
-термин3.3
Нужно вывести в views термины 1-уровня,то есть
термин1
термин2
термин3
Пытаюсь сделать через связи :
Добавить в "Связи":

Содержимое: Термины таксономии материала
Термин таксономии: Родительский термин
Добавить поле:

Термин таксономии (Связь - родительский термин)
выводится только
термин1
термин3
Как сделать чтобы выводились все термины?Спасибо

Комментарии

Аватар пользователя VasyOK VasyOK 12 декабря 2019 в 13:13

Во встроенной вьюхе taxonomy_term:
/admin/structure/views/view/taxonomy_term

Удаляем контекстный фильтр, который есть.
Добаляем новый контекстный фильтр "Имеет идентификатор термина таксономии (с глубиной)"
В нем указываем
Глубина: 10
(Может быть) Передать значение по умолчанию: ID термина таксономии из URL

Врое всё.

Аватар пользователя ivnish ivnish 12 декабря 2019 в 13:39

Уверен, что это хорошее решение редактировать системную вьюху для решения конкретной задачи?

Аватар пользователя VasyOK VasyOK 12 декабря 2019 в 14:27

Вьюху привел как пример. Ее можно клонировать. Можно использовать tvi. Можно не использвоать tvi, а вывести вывод по термину в блок и листать страницы AJAX - ом.

Аватар пользователя VasyOK VasyOK 12 декабря 2019 в 15:40

Ссылку на сайт и что хотите вывести. Хотя скорей всего или рецепт 2-мя комментами выше или views_field_view

Аватар пользователя leha373 leha373 12 декабря 2019 в 16:05

сайт у меня на локалке.
у меня есть поле:город иерархический выбор:
москва
-раменки
-дорогомилово
абакан
воронеж
-коминтерновский
-западный
мне надо чтобы выводились только города!
при выводе стандартно полем выводится
раменки
абакан
коминтерновский
последние термины в структуре

Аватар пользователя VasyOK VasyOK 12 декабря 2019 в 16:22

views_field_view
делаете вьюху которая у термирна выводит родительский термин аргумент вьюхи - ID термина
В свою вьюху добавляете:
1) поле (термин) ID.
2) поле ссылки на вьюху. аргумент - поле ID выше.

Аватар пользователя leha373 leha373 12 декабря 2019 в 16:29

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

Аватар пользователя VasyOK VasyOK 12 декабря 2019 в 17:17

Проверку есть ли родитель можно сделать и во вьюхе на которую сссылка, и в той из которой идет ссылка.

Аватар пользователя sas@drupal.org sas@drupal.org 13 декабря 2019 в 10:05

Он имеет ввиду вывести все материалы из чилдов термина по родителю, но насколько я понял Вам надо вывести именно чилды терминов из поля в каждом материале .

Аватар пользователя VasyOK VasyOK 13 декабря 2019 в 11:46

leha373 выложите в эфир и скажите когда выводить когда нет. Постараюсь подсказать. Не умею я объяснять на польцах.

Аватар пользователя leha373 leha373 13 декабря 2019 в 12:27

У меня есть иерархический словарь город.
В этом словаре не у всех терминов есть родитель,например:
москва(1 термин-родитель)
-раменки (это потомок)
-дорогомилово(это потомок)
-бабушкинский(это потомок)
архыз(1 термин-родитель,у него нет потомков)
воронеж(1 термин-родитель)
-коминтерновский(это потомок)
-центральный(это потомок)
Когда я вывожу так

названия терминов выводится так
раменки (а мне нужно чтобы было МОСКВА)
архыз ( тут выводится правильно как я хочу,потому что нет потомков)
коминтерновский(а мне нужно чтобы было ВОРОНЕЖ)
Когда я делаю связь термин -- родитель,выводится
МОСКВА
ВОРОНЕЖ
а АРХЫЗ не выводится,потому что нет родителя!
И вот вопрос.КАК МНЕ ВЫВЕСТИ ТЕРМИНЫ,КОТОРЫЕ ПЕРВЫЕ В СЛОВАРЕ,чтобы получилось
МОСКВА
АРХЫЗ
ВОРОНЕЖ

Аватар пользователя VasyOK VasyOK 14 декабря 2019 в 13:07

views_field_view можно вместе c views_conditional использовать (при определенном навыке можно и без) для проверке а не пустое ли поле. Т.е. имеет ли термин родителя.