Drupal — Расширенный поиск

Моя текущая среда:

  • Друпал 10.2.5
  • PHP: 8.2.15
  • MySQL: 8.0.36
  • Список установленных модулей, связанных с поиском:
    • search_api_solr >> Версия: 4.3.3
    • search_api >> Версия: 8.x-1.34
    • грани >> Версия: 2.0.7
    • Advanced_search >> Версия: 2.0.1

Моя цель — иметь расширенный поиск, подобный приведенному ниже: с окном поиска и фильтрами.

.

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

В разделе «Содержит» будут перечислены различные параметры, такие как: .

и справа возможность добавления новых строк с дополнительными фильтрами, например со знаком («+»): .

Я просмотрел модуль «расширенный поиск», и похоже, что он предлагает что-то очень похожее на то, что я ищу.

Я прочитал документацию «advanced_search».

Но мне трудно это реализовать.

Инструкция в разделе «Настройка поиска по коллекции».

Для поддержки поиска на основе коллекций вам необходимо индексировать field_member_of для каждого элемента репозитория также определите новое поле который отражает полную иерархию field_member_of для каждого элемент репозитория.

Где мне поставить field_member_of?

Заранее большое спасибо за вашу помощь!

Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Разработка Drupal и AngularJS: Идеальное сочетание для вашей веб-стратегии
Разработка Drupal и AngularJS: Идеальное сочетание для вашей веб-стратегии
Один опытный веб-разработчик назвал комбинацию Drupal и AngularJS "сочетанием, созданным на небесах". Почему так? Потому что вместе они могут создать...
0
0
88
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Сначала вам необходимо включить модули Search API и Search API Solr.

После включения вы можете перейти по адресу: <ВАШ ДОМЕН DRUPAL>/admin/config/search/search-api.

Здесь вы должны создать сервер индексирования с помощью solr.

После создания вашего сервера создайте index. Этот индекс будет принадлежать вашему серверу, и в нем вы должны выбрать типы контента, которые хотите индексировать, и ЗДЕСЬ ВЫ МОЖЕТЕ ВЫБРАТЬ поля тех же типов контента.

Как только все будет настроено, просто запустите задание индексирования, и все готово!

не уверен, что этот ответ отвечает на вопрос. Кажется, ОП спрашивает, как настроить фильтры, а не как настроить solr.

2pha 25.04.2024 01:09

Это не настройка Solr. Здесь он сможет индексировать весь контент, управляющий одним и тем же полем.

Pipo Bizelli 25.04.2024 01:33

@PipoBizelli спасибо за ваше предложение; На самом деле я уже выполнил все эти шаги.

user3891775 25.04.2024 16:59

@2pha, спасибо за ответ; мой вопрос был связан с настройкой «Расширенного поиска», инструкции которого относились к полю «field_member_of»; который я не знал, где его найти.

user3891775 25.04.2024 17:01
Ответ принят как подходящий

Меня направлял член сообщества Айлендоры. Вот что мне нужно было сделать. В желаемом «типе контента» мне пришлось создать поле — для удобства и единообразия назовите его «Член» > имя машины: «field_member_of». Вот ключевая часть: настройте ее как ссылку на объект > Тип ссылки: Содержание Тип контента: Элемент репозитория

В моем случае имя моего «типа контента» было «Запись метаданных».

Затем на индексной странице Solr перейдите к индексированию поля; проиндексировал его дважды:

  1. все поле
  2. развернуть, чтобы получить название

Мне еще нужно кое-что выяснить, чтобы это заработало; однако это будет ответ на этот вопрос.

Другие вопросы по теме