Очередность результатов в msearch2
Никак не могу найти как выводить в поиске вначале точные совпадения, а потом разные формы введенного запроса. Например, ввожу 1 рубль. Выдает в такой очередности:
1 рубль
1 рубль
1 рубль
5 рублей
5 рублей
5 рублей
1 рубль
5 рублей
1 рубль
3 рубля
3 рубля
1 рубль
…
У всех вес одинаковый, т.к нашел он это все в pagetitle. А как сделать чтоб выводились вначале все ресурсы с «1 рубль», а затем его формы? Заранее спасибо!
1 рубль
1 рубль
1 рубль
5 рублей
5 рублей
5 рублей
1 рубль
5 рублей
1 рубль
3 рубля
3 рубля
1 рубль
…
У всех вес одинаковый, т.к нашел он это все в pagetitle. А как сделать чтоб выводились вначале все ресурсы с «1 рубль», а затем его формы? Заранее спасибо!
Комментарии: 6
На данный момент — никак.
Хотя тут прислали правку на эту тему, можешь попробовать — в процессор mgr/index/create.class.php, метод _getBaseForms добавить условие:
Хотя тут прислали правку на эту тему, можешь попробовать — в процессор mgr/index/create.class.php, метод _getBaseForms добавить условие:
if ($word == $form) {
$count += 10; // Дополнительный вес за точную форму
}
Я пока не проверял, как работает.
Значит, верный ответ самый первый — пока никак.
Жаль(( Может нужно сделать это в след версии? Мне кажется логичным, что вначале выходит, то что ты ввел, а затем уже похожие формы. Не? Готов скинуться на эту доделку.
Василий, еще вопрос: можно все-таки как-то отключить морфологию? Ты писал как-то что нельзя, но может появился костыль какой-то? Мне нужно чтобы в результатах выводило четко то, что запросил. Спасибо!
может не совсем в тему, а разве нельзя использовать для этого группировку и сортировку переданную через сниппет, ну например
ORDER BY FIELD(a_season, "весна","лето","осень","зима")
более подробно читаем тут. Конечно на сортировку по весу это повлияет, но если вес одинаковый то пофиг, или если это вторая (последуюущая) сортировка, которая идет после сортировки по весу, тогда правильно должно быть.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.