Поиск не индексирует, если в тексте есть знак градуса и т.п.

Главные вкладки

Аватар пользователя oleg220 oleg220 27 октября 2020 в 19:05

Заметил неприятную особенность.
Стандартный поиск Drupal 6 не индексирует текст ноды, если в этом тексте есть символы, например градус цельсия °. В базе данных search_dataset самого текста нет.
Название и другие поля при этом прекрасно индексирует. Если градусы удаляю, то всё индексируется и ищется.
Подскажите, как решить эту проблему?
Используется стандартный поиск Drupal 6 + модуль RussianStemmer для улучшения поиска русских слов.

Лучший ответ

Аватар пользователя oleg220 oleg220 7 ноября 2020 в 18:29
1

Проблема оказалась в модуле rustemmer.
Изменил
define('RUSTEMMER_CHARS', '_0-9a-zA-ZабвгдежзийклмнопрстуфхцчшщьыъэюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ');
на
define('RUSTEMMER_CHARS', '°_0-9a-zA-ZабвгдежзийклмнопрстуфхцчшщьыъэюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ');
Устаревшая версия ядра оказалась не при чем.

Комментарии

Аватар пользователя oleg220 oleg220 7 ноября 2020 в 18:29
1

Проблема оказалась в модуле rustemmer.
Изменил
define('RUSTEMMER_CHARS', '_0-9a-zA-ZабвгдежзийклмнопрстуфхцчшщьыъэюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ');
на
define('RUSTEMMER_CHARS', '°_0-9a-zA-ZабвгдежзийклмнопрстуфхцчшщьыъэюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯ');
Устаревшая версия ядра оказалась не при чем.