Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как усовершенствовать поиск DLE 13.3?

Как усовершенствовать поиск DLE 13.3?


     15.10.2019    Общие вопросы, Общие вопросы по PHP    1096

вопрос
Доброго времени суток, прошу помощи у Вас! Использую DLE как движок онлайн-каталога, и собственно поиск на сайте используется для поиска автомобильных запчастей по Номеру (Пример: 676 655 123). По какой-то причине номер 676 655 1231 ищется, как и 6766551231, а оригинальный вид не хочет искать. Я так полагаю проблема в количестве вводимых символов, как исправить? Читал ответы на такие же вопросы, но DLE не стоит на месте и теми способами уже не решить проблему.

Ответил: Karon


В версии 13.3 добавлена функция изменения минимального количество символов для поиска. Настройки скрипта -> Новости -> "Минимальное количество символов для поиска".

7 комментариев

Karon
Юзер

Karon - 15 октября 2019 03:49 -

Прошу прощения нужно чтобы находились такие запросы как: 676 655 123 1
А ищет только если так: 676 655 1231 , 6766551231

dj-avtosh
PHP-developer

dj-avtosh - 16 октября 2019 04:40 -

Здравствуйте. Напишите где у Вас такой формат хранится и как точно выглядит? В названии новости? И что происходит при поиске, конкретнее?

По заказам пишем сюда: @Rud00y

ЯД: 41001679231462
Заказы в telegram (ремонт модулей, оптимизация нагрузок и т.п.):
В телегу писать сразу задачу и бюджет.

Karon
Юзер

Karon - 20 октября 2019 02:12 -

Данный номер указан в дополнительном поле новости. Поиск работает и находит значения из этого доп.поля. Проблема в том что поиск не ищет определённые формулировки номеров.
676 655 123 1 - не ищет;
676 655 1231 - ищет;
1231 - ищет;

Соответственно проблема как я понял в том что ДЛЕ не хочет искать запрос где в номере одна цифра. Вопрос как сделать чтобы ДЛЕ смог искать запросы с любым количеством символов?

voronoff_dev
Юзер

voronoff_dev - 20 октября 2019 05:24 -

Как вариант - заменить условие MATCH-AGAINST на LIKE в файле search.php. Только всё это ерунда. Пользователь может вбивать номер в любом формате и номер 1234 5678 уже не будет найден при запросе 12345678. Хотите нормальный поиск, приводите номера к единому формату, записывайте в отдельную таблицу и по ней ищите.

Karon
Юзер

Karon - 21 октября 2019 01:41 -

В том то и проблема что все запросы похожие на 67665 51231 он ищет, проблема заключается в минимальном количестве символов то беж 4. Нужно как-то изменить этот параметр, а с новой версией 13.3, старые решения проблемы не срабатывают, так как попросту нет кода который предлагают заменить в других темах на сайте.

voronoff_dev
Юзер

voronoff_dev - 16 октября 2019 03:58 -

Создайте отдельную таблицу БД и храните в ней все номера. Это если поиск только по номерам нужен. А если нужен более гибкий поиск, установите сфинкс и настройте правила индексации.

Karon
Юзер

Karon - 21 октября 2019 02:02 -

Всем спасибо форумчане! Проблема решена, в версии 13.3 добавлена функция изменения минимального количество символов для поиска. Настройки скрипта -> Новости -> "Минимальное количество символов для поиска".

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх