mSearch2 не индексируются поля с числами

Приветствую! Столкнулся с проблемой, решения в поиске не нашёл, поэтому пишу заметку. Суть проблемы проста: если вам нужен на сайте поиск по числовым значениям (именно поиск, не фильтрация), то скорее всего работать он не будет.
Это происходит потому, что в индекс добавляются словоформы, которых нет у чисел. Я сообщил разработчику, который поддерживает этот компонент, надеюсь скоро эту проблему исправят. А пока этого не произошло можно использовать этот костыль:
В файле «public_html/core/components/msearch2/processors/mgr/index/create.class.php» после цикла примерно на 181 строке пишем следующее
if(empty($froms) && $text){
    $words[$text][$field] = $count;
}
После этого очищаем индекс и переиндексируем ресурсы через интерфейс компонента в админке.
Артур Шевченко
12 апреля 2023, 19:35
modx.pro
1
778
+8
Поблагодарить автора Отправить деньги

Комментарии: 2

Сергей
25 апреля 2023, 16:28
0
Спасибо за решение, но к сожалению для меня это не решило проблему, поиск по числам вообще не работает, добавил к заголовку цифры и пытаюсь по ним что то найти и ни чего не находит.
    Артур Шевченко
    25 апреля 2023, 19:41
    0
    Мне требовался поиск исключительно по числу, у вас число + строка, что интерпретируется как строка, в вашем случае надо ещё поковырять тот же класс в том же месте и посмотреть, как эту проблему можно решить.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2