Не могу справится с поиском по сайту

InstantCMS 2.X

Есть проблемы с поиском и с фильтром

#1 16 марта 2018 в 18:19
Добрый день. Проблема такая интересная и очень хочется её решить.

1) На сайте речь идёт о новостройках и title это адрес дома. В принципе стандартный поиск находит дома по запросу "Столыпина 25", но выдаёт список и остальных домов с этой улицы с сокращёнными названиями, что не позволяет найти нужный дом:



И это очень не хорошо для сайта. Как можно увеличить количество символов для результатов поиска?

2) В компоненте включен фильтр и там тоже можно искать по адресу дома (у нас это title), но по факту он покажет нужный дом при точном совпадении символов. Соответственно по запросу "Столыпина 25" фильтр не выдаст "г. Ульяновск, ул. Столыпина, д. 25". Как это можно решить?



Для сайта куплен InstantMaps и исправно работает, но поиск по адресам понятный для людей организовать не получается. Что можно придумать?
#2 16 марта 2018 в 19:36
Сделать улицы и дома отдельными полями и вывести их в фильтре. А тайтл из фильтра убрать. Хотя в мапсе свои поля с контактами, так не получится. Если только продублировать их обычными полями, например, список (улицы) и число (дом). Это то, что можно сделать штатно. Также можно попросить у dwd приобрести поле, которое генерирует текст по шаблону из полей, и заменить им поле заголовка.

А можно сделать как-нибудь еще. Но нужен программист.
#4 16 марта 2018 в 20:23
Jestik, у ТС мапс. В этом проблема.
#5 16 марта 2018 в 21:30


addons.instantcms.ru/addons/adresa.html

Jestik

А на последней версии инстанта будет работать? И как этот компонент будет дружить с InstantMaps?
#6 16 марта 2018 в 21:32


Сделать улицы и дома отдельными полями и вывести их в фильтре. А тайтл из фильтра убрать. Хотя в мапсе свои поля с контактами, так не получится. Если только продублировать их обычными полями, например, список (улицы) и число (дом). Это то, что можно сделать штатно. Также можно попросить у dwd приобрести поле, которое генерирует текст по шаблону из полей, и заменить им поле заголовка.

А можно сделать как-нибудь еще. Но нужен программист.

шэльдэ бердэ бельдэ

Думал добавить отдельно поля УЛИЦА и НОМЕР ДОМА, но опять же есть такой момент как люди будут писать длинные названия улиц? Например "генерала мельникова"

И понял, что это проблему не решит…
#7 16 марта 2018 в 21:54
А что именно режет тайтлы в поиске?
Вроде на чистой системе такого нет. Там есть ограничение длины тайтла, но не такое короткое как у вас.
#8 16 марта 2018 в 22:11


А что именно режет тайтлы в поиске?
Вроде на чистой системе такого нет. Там есть ограничение длины тайтла, но не такое короткое как у вас.

alkokrolik

Тоже интересно, но мне кажется это зависит от поискового запроса, иногда нормально выдаёт:

#9 16 марта 2018 в 22:13


А что именно режет тайтлы в поиске?
Вроде на чистой системе такого нет. Там есть ограничение длины тайтла, но не такое короткое как у вас.

alkokrolik

И меня бы устроило если просто будет выдавать title целиком и фото… Но в php я не силён. Пытаюсь понять что к чему и роюсь в папке system/controllers/search
#10 16 марта 2018 в 22:26
Но некоторые поисковые запросы вполне адекватно отображаются:
#11 17 марта 2018 в 02:25
Roman, похоже, причина "обрезки": точка в этой строке:
github.com/instantsoft/icms2/blob/master/system/controllers/search/model.php#L248
Замените на символ, который вряд ли будет использоваться в заголовке.

Причина троеточия в конце короткого результата, скорей всего, здесь:
github.com/instantsoft/icms2/blob/master/system/controllers/search/model.php#L266
Замените на пробел.

Имейте ввиду: пишет человек, который, знаком с РНР, не лучше вашего (в случае чего, не бегите потом в центры защиты борцов за "правильный" поиск на бесплатных CMS).
#12 17 марта 2018 в 10:46


Roman, похоже, причина "обрезки": точка в этой строке:
github.com/instantsoft/icms2/blob/master/system/controllers/search/model.php#L248
Замените на символ, который вряд ли будет использоваться в заголовке.

Причина троеточия в конце короткого результата, скорей всего, здесь:
github.com/instantsoft/icms2/blob/master/system/controllers/search/model.php#L266
Замените на пробел.

Имейте ввиду: пишет человек, который, знаком с РНР, не лучше вашего (в случае чего, не бегите потом в центры защиты борцов за "правильный" поиск на бесплатных CMS).

Олег Васильевич я

Спасибо огромное!
Помогли правки 248 и 266 строки:

Такой результат нас совершенно устроит:
#13 17 марта 2018 в 11:01
Осталось придумать как быть с поиском в фильтре по адресу, так как он ищет по точному совпадению. И такой запрос как "игошина 6" не даёт результатов вообще, так как в фильтр выдаются результаты с точным совпадением. Например запрос "игошина" выдаст все дома в выбранном городе на этой улице. Но поле называется "Адрес дома" и это title объекта. Ждать, что люди будут писать туда только улицу бессмысленно. Соответственно нужно придумать как эту ситуацию исправить (и не сломать фильтр) или обойти...

Если я не ошибаюсь файл который отвечает за эти процессы в фильтре вот /system/controllers/files/model.php Или ошибаюсь )))

#14 17 марта 2018 в 11:13

Осталось придумать как быть с поиском в фильтре по адресу

Roman
Возможно, стоит в сторону скриптов посмотреть.
#15 17 марта 2018 в 12:36


Осталось придумать как быть с поиском в фильтре по адресу

Roman
Возможно, стоит в сторону скриптов посмотреть.

Олег Васильевич я

А это где?
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.