поиск по названию категории в Websphere Commerce 8 SOLR - PullRequest
0 голосов
/ 18 апреля 2019

Мы заметили следующие проблемы с поиском по полю 'categoryname' в WebSphere Commerce, поэтому пытались понять, является ли это проблемой настройки данных или Commerce Search / SOLR не предназначен для работы с такими сценариями.

У нас более 100 каталогов, предназначенных для конкретного сайта и клиента, клиенты получают свои собственные каталог / категорию / элементы при входе в систему, и нет проблем с просмотром категорий или размещением заказов, но возникают проблемы с поиском по ключевым словам OOB, начиная с OOB Профиль IBM_findProductsBySearchTerm включает в себя «categoryname» как часть «defaultSearch» при выполнении вызовов SOLR, а также name, shortDesc, ключевого слова и нескольких других полей.

Сказав, что мы видим слишком много нежелательных результатов, которые не релевантны для данного поискового ключевого слова, так как найдено совпадение в названии какой-либо другой категории каталога клиента. Мы видим правильные результаты, если я прокомментирую ниже в файле wc-search.xml, но это также предотвращает поиск категорий в текущем каталоге.

<_config:field name="defaultSearch"/>
<_config:field name="categoryname"/>

Например, следующие категории, которые соответствуют ключевому слову «конфеты», но не являются частью текущего поиска по ключевому слову сайта и каталога (сайт с каталогом D), как мы можем предотвратить их получение во время поиска по ключевым словам и по-прежнему использовать поиск по названию категории

Рубиновые конфеты - в каталоге А Смит молочные продукты - в каталоге B Кухонная утварь - в каталоге C Кондитерские принадлежности - в каталоге E

Подготовительные комплекты - в каталоге D нет предметов в этой категории, в которых есть слово "candy".

В основном мы получаем элементы из категории «Подготовительные комплекты» и для сайта с каталогом D при поиске по ключевым словам, поскольку в других категориях каталога есть слово «конфеты». В двух словах, мы получаем слишком много и не относящихся к делу результатов в текущее поле 'categoryname', используемое в wc-search.xml или в прямом запросе SOLR (qf = categoryname).

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

Какую настройку необходимо выполнить, чтобы устранить эту проблему, чтобы поиск возвращал релевантные результаты?

Спасибо

1 Ответ

0 голосов
/ 03 мая 2019

Нет ничего OOB, так как данные индекса категории не видны catalog_id.Решил проблему, добавив динамическое и многозначное поле categoryname_ и использовав его для замены существующего categoryname qf в пользовательском классе ExpressionProvider.Это ограничивает поиск по ключевым словам только текущими категориями каталогов и возвращает правильные результаты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...