Рейтинг:0

Как отображать узлы в блоке карты и в содержимом страницы с общими фильтрами?

флаг cn

Я использую тему Olivero на своем сайте Drupal 9 и создаю карту с Геолокациян модуль.

Я хочу создать представления для отображения этих двух отображений одних и тех же узлов:

  • один дисплей, представляющий собой карту (отображается в области «герой»)
  • другой дисплей (например, список тизеров), который отображается в области «контент».

Я хочу, чтобы они оба отображались на одной странице и использовали одни и те же фильтры. Если я фильтрую карту, она должна фильтровать узлы.

Если я создаю страницу просмотра с «вложением», карта прикрепляется до или после содержимого. Я хочу отображать карту в одном регионе и контент в другом регионе.

Как отобразить карту в блоке и узлы на странице с общими фильтрами?

РЕДАКТИРОВАТЬ :

Я тестировал страницу и блок в одних и тех же представлениях. Но это не работает, фильтруется только страница, а не карта:

введите описание изображения здесь введите описание изображения здесь

Вот конфигурация страницы Views:

введите описание изображения здесь

Блок идентичен, я просто настроил «Формат» и «Разбиение на страницы»:

введите описание изображения здесь

Я не знаю, как я могу одновременно фильтровать страницу и блок. Как уточнил в моем вопросе, блок должен быть в районе "Герой" темы "Оливеро".

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

Я нашел модуль ниже, но он больше не существует:

https://www.drupal.org/project/views_attachment_block

misterdidi avatar
флаг de
По сути, вы хотите, чтобы два отображения одних и тех же представлений использовали одни и те же фильтры. Возможно, эти темы могут быть вам полезны: //drupal.stackexchange.com/questions/40084/один-фильтр-критерий-для-двух-разных-дисплеев-одного-же-вида) - https://stackoverflow.com/a/19746604/10771744
флаг cn
@misterdidi Привет, я проверил ваше решение, но оно не работает. Я обновил свой вопрос.
misterdidi avatar
флаг de
После ваших правок см. мой ответ ниже. В качестве примечания: при публикации скриншотов страниц конфигурации всегда используйте английский язык, чтобы любой из сообщества мог вам помочь. ;-)
Рейтинг:0
флаг de

ОК, в соответствии с вашими правками, вот рабочее решение:

  • Под отображением страницы ваших представлений отредактируйте открытый фильтр и скопируйте его идентификатор (поле идентификатора фильтра). Вы также можете установить для него другое значение, если хотите (например, «my_filter_id»).

  • Теперь отредактируйте отображение блока. Удалите критерий фильтра «Тип контента» и вместо него добавьте контекстный фильтр «Контент: Тип контента».

  • Выберите опцию «Предоставить значение по умолчанию» и тип «Параметр запроса». Заполните текстовое поле «Параметр запроса» идентификатором вашего фильтра («my_filter_id»). Недоступное значение фильтра

  • В разделе «Когда значение фильтра доступно или указано значение по умолчанию» нажмите «Указать критерии проверки», средство проверки «Тип контента», действие, которое необходимо выполнить, если значение фильтра не подтверждает «Отображать все результаты для указанного поля». Значение фильтра доступно раздел

  • Убедитесь, что ни один из ваших дисплеев не использует параметр «Использовать AJAX», и сохраните представления.

Теперь, когда страница перезагружается для фильтрации отображения страницы, параметр запроса будет использоваться отображением блока для фильтрации результатов.

Однако самым большим отступлением является то, что это решение не работает с AJAX. :-(

флаг cn
Спасибо, это работает. Последний вопрос. Что делать, если у меня открыто несколько фильтров? https://ibb.co/z4ZXkxt
флаг cn
Я добавил поле «Близость» модуля геолокации в качестве открытого фильтра. В контекстном фильтре я не знаю, что выбрать для Валидатора. Извините, изображения на французском языке, но информация в тексте не подходит для моего запроса. https://ibb.co/F0VGDgc
misterdidi avatar
флаг de
Я совсем не знаком с модулем геолокации, но что, если вы пропустите валидатор вашего контекстного фильтра и используете 0 в качестве резервного значения параметра запроса?
флаг cn
Я только что протестировал, и карта страницы «Просмотры» пуста.
флаг cn
У меня есть несколько контекстных фильтров для поля. Я не знаю, какой использовать https://ibb.co/gmtjP5q и https://ibb.co/h1y43f0

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.