Views глючит Контекстный фильтр с таксономией

Главные вкладки

Аватар пользователя Bios Bios 29 февраля 2016 в 9:18

Добрый день

Появилась странная проблема...

Есть интернет-магазин. Был в нем блок с похожими товарами (похожесть определялась тэгами). И вроде бы все нормально работало до тех пор пока не выяснилось что часто стали выводиться схожие по контексту, но совсем другие по назначению товары.

Сделал еще одно поле, все настройки поля такие же как у поля ТЭГи. И вот сейчас у каждого товара есть поле ТЕГИ есть поле Похожие товары выглядит это так выглядит это так:

Заголовок: Мячик с погремушкой
ТЭГи: мячик, погремушка, мягкие игрушки
Похожие товары: погремушка

В результате вьюха должна выводить погремушки, но выводит только мячики. Хотя в контекстном фильтре вообще не указано поле ТЭГи.

В чем может быть проблема?

ОБА ПОЛЯ РАБОТАЮТ СО СЛОВАРЕМ ТЭГИ - это как то может влиять?

http://s019.radikal.ru/i631/1602/2d/476d41228285.jpg

Комментарии

Аватар пользователя Bios Bios 29 февраля 2016 в 13:58

Заметил что в итоге у меня выводятся ноды со всеми терминами страницы. Например Если взять словарь ТЭГИ, то отображаются ноды помеченные тегами из поля field_tags и из поля field_similar. Хотя во вьюхе настроен только field_similar

Ищу решение

Аватар пользователя Bios Bios 29 февраля 2016 в 16:03

gveenblade wrote:

Виюхи вообще дело тонкое) может необходимо в фильтрации напрямую указать, по каким тегам выводить?

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

Аватар пользователя Bios Bios 1 марта 2016 в 7:53

VasyOK wrote:

Помоему контекстный фильтр должен быть tid, а не то что у вас.

Что Вы имеете ввиду? Похожие товары это поле с типом ССЫЛКА НА ТЕРМИН. По сути в нем и хранятся tid.

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

Короче говоря выдает все связи ноды со словарем тэгов (2 поля). Наверно заморочено звучит

Аватар пользователя Bios Bios 1 марта 2016 в 7:57

Нашел частичное решение проблемы у xandeadx http://xandeadx.ru/blog/drupal/523 через PHP код во вьюхе

<?phpreturn node_load(arg(1))->field_similar[LANGUAGE_NONE][0]['tid'];?>

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

Может кто нибудь знает как переделать?

Аватар пользователя Bios Bios 1 марта 2016 в 7:58

bumble wrote:

Вот, хороший мануал.


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