Magento 2.3 с открытым исходным кодом - Как реализовать стоп-слова в ElasticSearch 6.x
С внедрением пользовательских зависимостей модуля следующим образом:
-
di.xml
в каталогеapp/code/Custom/Stopwords/etc
.<type name="Magento\Elasticsearch\SearchAdapter\Query\Preprocessor\Stopwords"> <arguments> <argument name="stopwordsDirectory" xsi:type="string">app/code/Custom/Stopwords/etc/stopwords</argument> </arguments>
stopwords_en_US.csv
в каталогеapp/code/Custom/Stopwords/etc/stopwords
, скопированном у поставщика.
Руководство по разработке документов, на которое я ссылаюсь
Редактировать
Я хотел бы добавить несколько стоп-слов в файл .csv
.
Добавили стоп-слова как следует:
Подробнее меньше некоторые немногие другое разное все
Проблема - после добавления вышеуказанных стоп-слов он не применяется.
1 answers
Я столкнулся с той же проблемой, что и вы, следуя предоставленной документации. Вы следовали указанию Изменить каталог стоп-слов вместо этого вы хотите следовать инструкциям в разделе Чтобы изменить каталог из вашего модуля
В вашем пользовательском модуле etc/di.xml файл добавьте в следующий
<type name="Magento\Elasticsearch\SearchAdapter\Query\Preprocessor\Stopwords">
<arguments>
<argument name="stopwordsModule" xsi:type="string">Your_Module</argument>
<argument name="stopwordsDirectory" xsi:type="string">stopwords</argument>
</arguments>
Затем обязательно скопируйте vendor\magento\module-elasticsearch\etc\stopwords\stopwords.csv
в app/code/Your/Module/etc/stopwords/stopwords.csv
и добавьте свои слова в конец файла, добавив новую строку для каждого слова.
Как только вы закончите, я рекомендуем перестроить индексы.