Ответить Новая тема Новый опрос 
 Настройка поиска
SAHAR
Новичок
Сообщений: 2
Регистрация: 01-02-2013


20-03-2013 17:37
Есть необходимость в настройке поиска в виде опции, которую я не мог найти в своем магазине.
Суть в следующем: необходимо чтоб быстрый поиск выдавал только результаты при полном попадании искомой фразы, а не отдельных слов, как сейчас.


Престашоп 1.4.9, модуль быстрого поиска "blocksearch"
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Michel II
Профессионал
Сообщений: 473
Регистрация: 08-06-2012


08-09-2015 04:57
Подниму тему. Волнует этот же вопрос.

По запросу розовый шар
выдает все, где попадается шар
шарик, шарманка, лягушка в шарфе и тп

А нужно, что бы выдавало только полное соответствие
Розовый шар

Ну и хотя бы все где встречается РОЗОВЫЙ и ШАР (именно ШАР)

 



preatashop v1.4.10
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Алекс


Администратор
Сообщений: 4516
Откуда: Красноярск
Регистрация: 29-05-2009


08-09-2015 11:10
Цитата:( Michel II @ 08-09-2015 05:57 Смотреть сообщение )
нужно, что бы выдавало только полное соответствие

Код:
? ' \''.pSQL(Tools::substr($word, 1, PS_SEARCH_MAX_WORD_LENGTH)).'%\''
: '\''.pSQL(Tools::substr($word, 0, PS_SEARCH_MAX_WORD_LENGTH)).'%\''

заменить на:
Код:
? ' \''.pSQL(Tools::substr($word, 1, PS_SEARCH_MAX_WORD_LENGTH)).'\''
: '\''.pSQL(Tools::substr($word, 0, PS_SEARCH_MAX_WORD_LENGTH)).'\''
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Michel II
Профессионал
Сообщений: 473
Регистрация: 08-06-2012


08-09-2015 18:44
Спасибо. Очень круто. особенно классно работает, если включить мгновенный поиск. Получается какой то мжджик. Ты печатаешь, а тут картинки именно твоего запроса появляются (в смысле на витрине)
От себя (для других, ищущих решение) добавлю, что вышекуазанный код следует заменять в файле classes/poisk.html
 



preatashop v1.4.10
Вне форума
ПМ 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
admmatrix
Cпециалист
Сообщений: 144
Откуда: Москва
Регистрация: 12-08-2011


13-06-2016 16:59
Цитата:( Алекс @ 08-09-2015 12:10 Смотреть сообщение )
Цитата:( Michel II @ 08-09-2015 05:57 Смотреть сообщение )
нужно, что бы выдавало только полное соответствие
Код:
? ' \''.pSQL(Tools::substr($word, 1, PS_SEARCH_MAX_WORD_LENGTH)).'%\''
: '\''.pSQL(Tools::substr($word, 0, PS_SEARCH_MAX_WORD_LENGTH)).'%\''

заменить на:
Код:
? ' \''.pSQL(Tools::substr($word, 1, PS_SEARCH_MAX_WORD_LENGTH)).'\''
: '\''.pSQL(Tools::substr($word, 0, PS_SEARCH_MAX_WORD_LENGTH)).'\''


Спасибо, а не подскажите:

Например, вводим datakam g5, при данном варианте показывает в том числе и datakam g9, как переделать под полное соответствие написанному в строке поиска?
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
KAPAJIJI
Новичок
Сообщений: 1
Регистрация: 02-12-2017


02-12-2017 00:45
Не помогло данное решение на 1.6.1.17. Все равно выдает все товары, если есть хотя бы одно слово из запроса.

Сайт: http://santeh-oborud.ru
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
grizla05
Новичок
Сообщений: 2
Регистрация: 02-02-2015


09-08-2023 18:08
У меня Prestashop 1.6.1.11, тоже не помогло, уже был такой код в файле Search точка php
? ' \''.$start_search.pSQL(Tools::substr($word, 1, PS_SEARCH_MAX_WORD_LENGTH)).$end_search.'\''
: ' \''.$start_search.pSQL(Tools::substr($word, 0, PS_SEARCH_MAX_WORD_LENGTH)).$end_search.'\''
Но два слова не искал, и вообще если вводить фразу с пробелом, то искал по каждому отдельному слову. Помогло, случайно, другое решение. Я решил попробывать вставить содержимое файла Search точка php из версии Prestashop 1.7.7.0 в свою версию и ВСЁ ЗАРАБОТАЛО! Стало искать сочетание из двух слов "картридж 106R04348". Раньше выдавало 1244 товара, а при новом варианте выдало 2 варианта (Чип 106R04348 и картридж 106R04348), что является для пользователя отличной выдачей на поисковый запрос. Далее ввожу в поиск "чип 3010" и находит один вариант, а именно "Чип для Xerox Phaser 3010, 3040, WC 3045B, 2.3K". Я уже обрадовался, но это оказалось неверное решение, временное. Оно сломалось сразу после переиндексации всех товаров на вкладке "Поиск". Стало - Проиндексировано товаров 0 / 2545. а было 2545 / 2545. После возврата исходного файла от версии 1.6.1.1 всё заработало опять. Значит есть нужный код в новом файле, который требуется изменить в старом!


Сообщение отредактировал grizla05 (09-08-2023 19:10)
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
grizla05
Новичок
Сообщений: 2
Регистрация: 02-02-2015


09-08-2023 18:40
Файл поиска (Search точка php от Престы 1.7.7.0) во вложении. Как временное решение можно проиндексироваться на старом файле от 1.6.1.11, а потом заменить его на новый файл от 1.7.7.0. :cof:
Будьте внимательны файл называется Search точка php, так как при загрузке на сайт, он переименовывается в файл "Poisk.html"


Сообщение отредактировал grizla05 (09-08-2023 19:44)


Вложения:

Вложения poisk.html( Размер файла: 50.05KB Скачиваний: 28 )
 
Вне форума
ПМ Отправить эл.сообщение 
Щелкните, и это сообщение будет добавлено в ваш ответ как цитата Цитировать этот ответ
Ответить Новая тема Новый опрос