Member Posted May 1, 2012 Report Share Posted May 1, 2012 Удалось ли кому-нибудь решить проблему с поиском в последней версии Симплы?Я обнаружил 2 серьезных глюка, которые у меня пока не получается исправить:1) Если название товара содержит скобки, например "Сборник произведений Л. Н. Толстова (подарочное издание)", то найти этот товар абсолютно нереально, поскольку в отправляемом запросе скобки автоматически вырезаются. Где именно в коде это происходит мне выяснить не удалось. В index.tpl я заменил строку var reEscape = new RegExp('(\\' + ['/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\'].join('|\\') + ')', 'g');наvar reEscape = new RegExp('(\\' + ['/', '.', '*', '+', '?', '|', '[', ']', '{', '}', '\\'].join('|\\') + ')', 'g');но проблемы это не решило, скобки вырезаются еще в какой-то функции...2) Ошибка в скрипте автозаполнителя строки поиска. Если на сайте (возьмем к примеру официальный демо-сайт http://demo.simplacms.ru/) начать вводить в строке поиска слово, например "Same", то после введения первой буквы "s", внизу показывается 22 результата, после введения второй и третьей буквы "аm", количество результатов уменьшается до 6-ти (все результаты - телефоны Самсунг). А если четвертую букву ввести такую, для которой результатов нет, то в IE в статусной строке появляется сообщение об ошибке скрипта:'suggestions.length' - есть null или не является объектомСтрока: 11Символ: 5206Код: 0URI-код: http://demo.simplacms.ru/js/autocomplete/jquery.autocomplete-min.jsи окошко с подсказками зависает, вместо того чтоб исчезнуть.Как это все можно побороть? Неработающая нормально функция поиска в интернет-магазине, это очень печальное явление и с этим нужно что-то дать.У кого есть мысли, как можно исправить эти глюки? Quote Link to post Share on other sites
Member Posted May 3, 2012 Author Report Share Posted May 3, 2012 Жаль, что эти баги похоже никому здесь не интересны и магазины на этом движке делаются с кривой функцией поиска... Quote Link to post Share on other sites
Kosjak76 Posted May 3, 2012 Report Share Posted May 3, 2012 Есть разные алгоритмы поиска, вам нравится один, разработчику системы - совершенно другой, мне, кстати, третий...Если хотите что-то конкретное - это одно, за недорого найдется масса желающих вам помочь...А если считаете, что все должны думать так, как вы - то это не к нам...Мне самому поиск Симплы 2 никогда не нравился, но это решение автора.Кривость каждый для себя определяет сам. Quote Link to post Share on other sites
ivan888 Posted May 3, 2012 Report Share Posted May 3, 2012 Выход есть всегда. Например выбрать из множества и прикрутить поиск "стороннего производителя". На свой "вкус". Quote Link to post Share on other sites
Member Posted May 3, 2012 Author Report Share Posted May 3, 2012 Есть разные алгоритмы поиска, вам нравится один, разработчику системы - совершенно другой, мне, кстати, третий...Дело не в алгоритме. Про алгоритм я ничего не говорю, его каждый может самостоятельно изменить под свои требования. Я, к примеру, его изменил так, что поиск идет теперь не только по названию, но и по артикулу и описанию товара.Речь о том, что стандартный алгоритм, который создал сам автор движка, не работает нормально из-за ошибки в скрипте. Quote Link to post Share on other sites
Kalatsch Posted May 4, 2012 Report Share Posted May 4, 2012 Member, будьте любезны, подскажите, как именно вы изменили поиск, мне тоже очень нужен поиск по описанию!Заранее благодарен! Quote Link to post Share on other sites
granata005 Posted May 4, 2012 Report Share Posted May 4, 2012 Member, будьте любезны, подскажите, как именно вы изменили поиск, мне тоже очень нужен поиск по описанию!поставьте пользовательский поиск от гугла... Quote Link to post Share on other sites
Member Posted May 4, 2012 Author Report Share Posted May 4, 2012 Member, будьте любезны, подскажите, как именно вы изменили поиск, мне тоже очень нужен поиск по описанию!Я уже довольно много чего изменил в движке, поэтому уже точно не помню что именно и где менял. Вроде я только в файле ajax/serch_products.php в 9-й строчке переписал запрос к базе. У меня он сейчас выглядит вот так: $simpla->db->query('SELECT id, name FROM __productsWHERE name LIKE "%'.mysql_real_escape_string($keyword).'%" OR body LIKE "%'.mysql_real_escape_string($keyword).'%" OR sku LIKE "%'.mysql_real_escape_string($keyword).'%" AND visible=1 ORDER BY name LIMIT ?', $limit);Но я еще в базе в таблицу products добавил столбец sku и переписал участок кода, который отвечает за запись в базу добавляемого товара, чтоб артикул добавлялся в таблицу товара, а не в отдельную. Это сделано для меньшей нагрузки на сервер при поиске, чтоб не искать одновременно в 2-х таблицах.Для вашего случая sku из запроса нужно или убрать (если вам не нужен поиск по артикулу) или переписать запрос для поиска в двух таблицах. Quote Link to post Share on other sites
tsybart Posted May 4, 2012 Report Share Posted May 4, 2012 здесь автор должен давать таблетку, серьезный баг Quote Link to post Share on other sites
quiz Posted May 20, 2012 Report Share Posted May 20, 2012 У меня вместо русских букв отображаются квадраты из-за чего это может быть? Quote Link to post Share on other sites
howareyou Posted May 21, 2012 Report Share Posted May 21, 2012 А ещё нет поиска по категории.категория: Телефоны самсунгназвание телефонов в категории: 1, 2, 3...Вводим слово самсунг и ничего не находим.вводим слово тачскрин и ничего не находимесли в названии дробь (слэш), то тоже товар не находится.Короче, плохой поиск. Quote Link to post Share on other sites
quiz Posted May 21, 2012 Report Share Posted May 21, 2012 у меня еще нет выпадающего списка=(как его сделать? Quote Link to post Share on other sites
strannik22 Posted May 24, 2012 Report Share Posted May 24, 2012 такая же беда... Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.