+37
Реализовано ранее

Сделать поиск по части слова (по вхождению)

lodyr 9 years ago updated by @Alex (Администрация) 7 years ago 18
Сделать поиск более функциональным. 
Есть много однотипных товаров, допустим картриджи, маркировка у них буквенно-цифровая, например, Q2612A, C7115A и т.д. Гораздо проще использовать для поиска 2612, чем набивать с первым символом. То же самое с разными моделями кондиционеров, телевизоров и т.д. там где используются всяко-разные буквенно-цифровые индексы.
Про звездочку знаю, но хотелось бы нормального решения, так как это работает в других интернет магазинах. 

Answers

Answer
Реализовано ранее

Установка звездочки слева отключает индексы при поиске. По умолчанию этого делать нельзя, т.к. это может катастрофически замедлить поиск по большому числу товаров.

Если включение звездочки оправданно - это должно быть осмысленным действием.

PINNED
Ребят, все это давно уже сделано. Для поиска по части слова вбивайте звездочки: "*2612*". Чтобы они подставлялись автоматом - чуток допилите JavaScript.
PINNED
Ребят, все это давно уже сделано. Для поиска по части слова вбивайте звездочки: "*2612*". Чтобы они подставлялись автоматом - чуток допилите JavaScript.
А пользователям вы тоже будите объяснять что надо вбивать "**"?
Видимо пользователям помимо этого нужно рассказать как лучше забить поисковую фразу, чтоб хоть что-то нужно нашлось.

Вы внимательно прочитали то, что я написал?
Внимательно! Считаю что таких косяков за 24 куска не должно быть.
чтож, повторюсь


> Чтобы они подставлялись автоматом - чуток допилите JavaScript.  

допилка занимает порядка 10 минут.

Ну а почему Amiro не может чуток допилить этот JavaScript и люди будут пользоваться поиском, чем в стандарте, задавая кучу вопросов и тратить время, если это чуток. 

Может это специально оставлено, для партнеров Амиро, сделать не сложно, а денюжку с клиента взять можно) Все какая-никакая работа)

Тут вы ошибаетесь, партнерам наоборот выгодно, чтобы по умолчанию было включено как можно больше "вкусняшек", таким образом сокращаются скроки разработки проекта и сама CMS выглядит интереснее в глазах потребителя. Ко всему прочему, технологи и php-программисты стоят намного дороже, чем простые интеграторы + их еще найти нужно, именно со знанием Amiro.CMS. 


К сожалению, здесь нельзя посмотреть статистики голосов, но весь наш офис активно голосует за такого рода доработки. Я вам скажу больше, мы еще и репостим (тв, вк, г+ и т. д.) самые необходимые на наш взгляд доработки, чтобы привлечь как можно больше голосов "за".

Ну тогда не понятна позиция Амиро. Если это надо даже для партнеров, почему не реализуются  такие мелочи. Как раз для программиста добавить звездочку в поле ввода при помощи джава скрипта труда большого не составит (работы на пять минут), а для пользователя, типа меня, почти целое событие) Да и поиск на сайте, вещь как бы не последняя, если сказать не первая, ничего не нашел, значит ничего и не купил. Не понятно. 


Я уже как-то на форуме вступал в полемику с представителями Амиро, но ответ был неутешительный, так как поиск расходует большие ресурсы, поэтому его не будет, хотя на других цмсках и движках все работает. Но видимо это внешняя сторона, а внутри все не так. Так может просто добавить в шаблон хотя бы скрипт,  а уж пользователь сам решит, нужен он ему или нет. А так вроде бы и поиск есть, да ничего не ищет.

Поиск одно из самых слабых мест Amiro CMS. Чтобы его подточить к более менее нормальному виду нужно или много ручной работы, вроде заполнения дополнительных полей и тэгов, а потом включение их в поиск или писать скрипты, нанимать программистов, интегратеров. 

Требует уточнения

Установка звездочки слева отключает индексы при поиске. По умолчанию этого делать нельзя, т.к. это может катастрофически замедлить поиск по большому числу товаров.

Если включение звездочки оправданно - это должно быть осмысленным действием.

@Alex

Чего-то ходил-ходил на сервис, смотрел-смотрел на надпись "требует уточнения"

но так и не понял, что надо уточнить) Решил написать, так как сказать продолжить дискуссию.  Вроде все написано, расписано, куча магазинов работает с нормальным поиском, я все никак не пойму, неужели людям не нужен нормальный поиск и только я ищу таким образом?

Сейчас еще глянул несколько больших магазинов nix.ru, forum3.ru, oldi.ru . Везде данный функционал присутствует, это же очень удобно, сокращает время на поиск того что надо. Какие же нужны аргументы, чтобы вы все таки занялись поиском?

Я думаю, что вы уже сделали неплохую работу. 31 голос, это все-таки не ерунда. Думаю можно быть уверенными, что в Амиро эту тему возьмут на заметку. Хотя я думаю в этих самых заметках она итак давно уже числится. )

Под этим статусом все написано. И почему, и как можно сделать - если это действительно нужно.


глянул несколько больших магазинов nix.ru,


В том и дело, что это большие магазины, на большом железе и с серьезным подходом к оптимизации. На шареных хостингах с ограниченными ресурсами, то есть на большинстве мест, где стоят сайты Amiro.CMS - бездумное включение такого поиска приведет к резкому замедлению работы на больших объемах. Если же вам нужен ресурсоемкий поиск - следует вначале задуматься о выделении ресурсов для его поддержки.

Собственно - как включить такой поиск, если он необходим - выше тоже написано.

Answer
Реализовано ранее

Установка звездочки слева отключает индексы при поиске. По умолчанию этого делать нельзя, т.к. это может катастрофически замедлить поиск по большому числу товаров.

Если включение звездочки оправданно - это должно быть осмысленным действием.

Евгений Лапин

<Ребят, все это давно уже сделано. Для поиска по части слова вбивайте звездочки: "*2612*". Чтобы они подставлялись автоматом - чуток допилите JavaScript.>

Вот бы кто выложил код этого "допила" JavaScript?! Столько людей осчастливили бы!

Упрощенно:
Есть форма поиска:
<form id="small_search" method="get" action="search.html" name="small_search">

<input id="suggestionSearch" class="small_search_field" type="text" onclick="ClickSmallSearch(this)" placeholder="введите запрос" name="words" autocomplete="off">

</form>


<script>

document.getElementById('suggestionSearch').onblur = function () {<br>this.value = '*' + this.value + '*';<br>}
</script>


Можно вешать обработчик на onsubmit при отправке формы, можно делать через addEventListener, что было бы, возможно, самым корректным методом. Если не

получается, то стучитесь, подскажу.

Если честно, не хватает знаний, чтобы самому разобраться и "допилить". Создал тему на форуме, думаю, там будет уместней обсудить технические детали этого вопроса.