Синонимы
Здесь вы можете указать синонимы для поисковых запросов ваших пользователей.
Система работает очень просто, если в запросе встречается определённое слово, указанное здесь, то к нему добавляется синоним.
Синонимов может быть сколько угодно, при этом они могут не только добавляться, но изаменять оригинальное слово.
Таким образом, вы можете исправлять популярные опечатки в названиях товаров или еще где.
Например, если у вас есть товар whiskas, вы можете добавить для него следующие записи:
- wiskas
- уискас
- вискас
- и т.д. — смотрите ваши запросы
По каким именно словам проходит поиск вы можете узнать, включив параметр &showLog сниппета mSearch2.
Несмотря на то, что последние дни были довольно-таки богатыми на события, я успел как следует поработать и добавить очень серьёзные возможности в mSearch2.
Настолько серьёзные, что теперь это уже можно называть версией 1.0.0-beta.
Фильтр
В этой версии мы решили сделать работу подсказок более понятной, поэтому теперь предсказания показывают сколько будет добавлено результатов, а не всего. На картинках будет понятнее. — 1.
1. Сначала все фильтры показывают, сколько будет результатов при клике на один из них. 2. При активации одного фильтра в группе, остальные показывают сколько значений прибавится. Соседня группа при этом может ограничивать выборку, поэтому она показывает итоговое количество результатов, как и раньше. 3. Когда же выбран и другой фильтр — они уже друг друга не ограничивают, и оба показывают радостные плюсики с добавками.
Мне кажется, так стало гораздо понятнее, что это за циферки рядом с фильтрами.
Еще добавился новый фильтр, который заказала и оплатила наша читательница — grandparents. Он пригодится для больших каталогов, когда вывод родителей только мешает, и лучше выводить дедушек.
Опять картинки: — parents
- grandparents
Вызываем как обычно:
[[!mFilter2?
&parents=`0`
&filters=`parent:grandparents`
]]
Если родитель находится в корне — то он остаётся как есть, ничем не заменяется.
Поиск
Добавлен новый раздел в админке — поисковые запросы. В нём фиксируются все запросы пользователей сайта, сколько раз задали каждый запрос и сколько было найдено совпадений. Это сделано для: — Оптимизации запросов, по которым ваши пользователи ничего не находят.
- Будущего сниппета, который будет выводить подсказки в форме поиска.
- Для оптимизации следующей новинки — синонимов.
Синонимы — это возможность более гибко влить на поиск.
Например, вы торгуете кошачьими кормами, и народ регулярно ищет у вас «wiskas«, безрезультатно. Теперь вы можете просто добавить исходное слово «wiskas» и псевдоним к нему — «whiskas«.
А потом можно добавить и «вискас» → «whiskas», и «уискас» → «whiskas», и что угодно. —
Синоним может добавляться в запрос а может и заменять исходное слово — дело ваше.
Как вы понимаете, это 2 новых функции полностью меняют управление поиском на сайте. Теперь вы можете направлять пользователя туда, куда вам нужно, а не ждать милости от словарей и алгоритмов.
Заключение
Есть еще немного изменений, о которых тоже стоит упомянуть: — У mFilter2 исправлена работа с плейсхолдером total в новых версиях pdoTools.
- Можно перезаписать чанки при установке новой версии пакета.
- У mSearch2 немного улучшена подсветка совпадений в тексте.
- При включенном showLog у сниппетов выводится лог поиска.
- Новый системный параметр mse2_search_like_match_bonus, который указывает дополнительный бонус за неточное совпадение. Если его выставить в 0, то поиск будет только по словарям, без LIKE.
Для финальной версии мне осталось добавить сниппет, который будет генерировать поисковые подсказки, основываясь на истории запросов, и управление словарями из админки (установка, удаление, включение и отключение).
Поэтому — обновляемся, пишем об ошибках или странностях в работе поиска, чтобы я мог двигаться дальше.
20 мая 2015, 16:00
Я очень привык к тому, что Яндекс понимает текст, набранный в любой раскладке, но на сторонних сайтах все несколько сложнее — запрос приходится перепечатывать, если набрал вдруг не в той кодировке. Но вот, на днях я наткнулся на библиотеку Text_LangCorrect, которая позволяет определить неверную кодировку и исправить ее. Решил набросать сниппет для MODX, использующий ее для коррекции запросов пользовтелей. Представляю вам LangCorrect.
Дополнение представляет из себя небольшой сниппет, подключающий библиотеку и корректирующий текст в случае, если он был набран в неверной раскладке. Кроме того, при коррекции, информация о проведенной трансформации выводится в плейсхолдер [[!+lc.message]]. В действии можно посмотреть в поиске по моему сайту:
- Ljgjkytybz+MODX
- Jgnbvbpfwbz
- фгещКувшкусещк
Иногда пользователям надо дать возможность отменить корректировку. Для этого достаточно добавить в ссылку get-параметр noncorrect=1:
- http://ilyaut.ru/search/?query=фгещКувшкусещк&noncorrect=1
Исходный код компонента доступен на Github.
Permalink
Cannot retrieve contributors at this time
Here you can indicate synonyms for your visitors’ queries.
The system is easy: if there is a word in a query that is indicated here, its synonym is added to it.
There can be as many synonyms as you want. Not only can they be added to the original word, they can also replace it.
This can help you to correct common misspellings in products’ names and so on.
For example, if you have whiskas product, you can add following records to it:
- wiskas
- уискас
- вискас
- etc. – see your queries
You can know by what words search is done if you activate parameter
&showLog of snippet mSearch2.
учетом морфологии
К примеру KIVI PI90 и KIVI-PI90 чтобы искал равноценною
Синонимы тут не помогут
Использую mSearch2.
И второй вопрос. Можно ли как-то группировать результаты? Пробовал гуглить, но что-то глухо
russian
programming
software
modx
04:49 06.09.2021
1
ответов
вероятно поможет замена LIKE на SOUNDS LIKE
06:43 06.09.2021

