Здравствуйте.
Есть нода, она связана с терминами BMW(родительский термин) и X5(дочерний термин) из словаря Марки авто.
Есть отзывы, котороый также связаны с терминами из этого словаря.
Нужно на странице просмотра ноды авто вывести список отзывов из того же
термина, что и текущая нода, на странице которой мы находимся
При этом нужно учесть, что должны выводится только отзывы из дочерних терминов
т.е должны выводиться отзывы, относящиеся к термину Х5
я сделал нечто подобное, но у меня выводятся все отзывы и из термина BMW, и из Х5.
посмотрите во вложении скрин
что надо подправить, что работало?
спасибо
апд. Нужно добавить еще оду связь - родительский термин, и сделать ее обязательной
Вложение | Размер |
---|---|
userpic2.jpg | 84.11 КБ |
Комментарии
В контекстных фильтрах есть "Содержимое: Has taxonomy term ID depth modifier"
да, есть. Однако это не работает, пробовал по-разному ставить глубину, как в минус, так и в плюс
Использовать вроде надо совместно с "Содержимое: Has taxonomy term ID"
По крайней мере у Вас на скрине только один из двух обязательных аргументов для вывода материалов похожих терминов.
Что-то не выходит, я добавил этот контекстный фильтр
поигрался с его настройками, результат не тот. Можно немного подобнее?
возможно, отзывы вам надо оставлять только на конкретные подтермины?
ну, если бы это было так, проблема решилась бы легко))
но нет, их количество постоянно растет
ну тогда вам необходимо узнать крайний термин, и указать его как аргумент в views.
насколько я знаю, можно вписать php
пробовал arg(2) и return(arg(2)) в контекстном фильтре Содержимое(имеет термин таксономии ID),
но тоже не работает. Это для шестерки. Возможно в семерке надо иначе вписывать
как конкретно? Список дочерних терминов не постоянен, поэтому этот вариант отпадает.
Родительские постоянные, на даже если сделать фильтр "Содержимое имеет термин таксономии", в нем указать "кроме", и выбрать все родительские термины, то ничего вообще выводиться не будет, т.к родительские термины имеют все отзывы, следовательно такой фильтр будет исключать все материалы.
апд:а при попытке сделать такой же фильтр по "Таксономия - Термин (кроме)(все родительские термины)" вообще выдает ошибку аякс-запроса
На мой взгляд, вьюв сделан правильно, просто к термину BMW не должно быть отзывов, только к X5.
Опять же не получится, к сожалению( Словарь марка привязан и к отзывам, и к авто. Стоит hierarchical select, который определяет, будет ли нода принадлежать ко всей цепочке терминов, только к родительскому термину или же только к самому глубокому термину.
В моем случае в отзывах надо сделать привязку к самому глубокому термину, а в авто ко все цепочке терминов
(иначе в каталоге будет отображаться некорректно), а hs не позволяет указать разные настройки для одного словаря
Может, отзыв привязать к авто (которое привязано к марке) и получать отзывы по марке
Отзыв должен быть привязан именно к термину, т.к авто данной марки не одно, их много, т.е пользователю придется через ноде референс при создании отзыва привязывать его ко всем авто этой марки, а их может быть сотни
пока как временное решение сделал очень коряво - при помощи js