Вывод одного типа материала в другом при совпадении терминов таксономии

30 августа 2020 в 18:20
Аватар пользователя sts911 sts911 0 8

Добрый день. Не могу решить вот такую задачу:

Есть 2 типа материалов: Магазин и Товар. У этих типов материалов есть общий словарь таксономии Список магазинов. Создаю тип материала Магазин и присваиваю ему значение из словаря Список магазинов - Пума, создаю тип материала Товар и присваиваю ему значение из словаря Список магазинов - Пума

Как настроить вывод товаров для каждого магазина, чтобы выводились только его товары?
Понимаю что это через views, но вот фильтрацию не могу настроить.
Заранее благодарен за ответы.

Комментарии

А вы просто балуетесь или это реальный проект для магазина? Если второе, то для этого есть специализированные модули, например commerce

30 августа 2020 в 18:28

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

30 августа 2020 в 18:37

Даже если человек и балуется, на чем то же нужно учиться. Лучше что-то делать, а не спрашивать: "подойдет ли Друпал для сайта типа Амазон".

По делу.
1. Представление 1.
Контекстные фильтры Содержимое: Имеет идентификатор термина таксономии. Когда значение фильтра НЕ доступно - Передать значение по умолчанию - ID термина из URL.
Критерии фильтрации. Тип материала = товар.
Поля: Название, Фото, Цена.

2. Представление 2.
Контекстные фильтры Содержимое: Nid. Передать значение по умолчанию: ID материла.
Взаимосвязи. Содержимое: Список магазинов - поле которое ссылается на словарь.

Поля.
Термин таксономии: ID термина. Исключить из вывода. Разделитель тысяч - нет.
Глобальный: Просмотр. (От модуля views_field_view) Просмотр/Показать: Представление 1 (см выше). Контекстные фильтры [%tid].

3. На типе контента Магазин viewfield поле "Вывод товаров". Always use default value. Допустимые значения Представление 2. Значение по умолчанию Представление 2 нужный дисплей. Аргументы [node:nid].

Можно пункт 3 заменить просто блоком Представления 2 на ноде.

30 августа 2020 в 19:37

Сделал по Вашей инструкции, но вывода добиться не получилось.
Настройки Представления 1

Контекстный фильтр представления1

Настройки представления 2

Контекстный фильтр представление 2

Связь в представлении 2 (Поле ссылающиеся на словарь для материала Товар)

Поле глобальное представление в представлении 2

В чем моя ошибка?

30 августа 2020 в 20:16