Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Уважаемые господа,

 

Подскажите пожалуйста как можно решить данную проблему

 

Есть два товара

 

iphone 6 16gb http://demo.simplacms.ru/products/iphone-6-16gb

и

iphone 6s 16gb http://demo.simplacms.ru/products/iphone-6s-16gb

 

Пишу в строке поиска: iphone 6 16gb

и попадаю на страницу результатов поиска http://demo.simplacms.ru/products?keyword=iphone+6+16gb

 

а дальше если я нажимаю снова на строку поиска происходит обновление страницы и в поиск я больше ничего написать не могу...

Ссылка на сообщение
Поделиться на другие сайты

Тут нет iphone 6, тут есть iphone 4  :)

А вообще данной проблемы на сайте http://demo.simplacms.ru/ я не наблюдаю, поиск работает корректно.

Ссылка на сообщение
Поделиться на другие сайты

Тут нет iphone 6, тут есть iphone 4 :)

А вообще данной проблемы на сайте http://demo.simplacms.ru/ я не наблюдаю, поиск работает корректно.

На демо сайте восстанавливается бекап спустя время, по этому там нет ифинов набитых ручками ТС.
Ссылка на сообщение
Поделиться на другие сайты

На демо сайте восстанавливается бекап спустя время, по этому там нет ифинов набитых ручками ТС.

 

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

Ссылка на сообщение
Поделиться на другие сайты

Действительно айфоны которые я добавлял, испарились, но остались четверки

 

вот линк http://demo.simplacms.ru/products?keyword=Apple+iPhone+4S+16Gb

 

Да и вообще, я добавил на демо сайт что бы показать что эта проблема не конкретно моего сайта или шаблона, а общая проблема движка.

 

Попробуйте на любом своем сайте на симпле, добавьте два товара iphone 6 16gb и iphone 6s 16gb, что бы увидеть эту проблему.

Изменено пользователем snagovskiy
Ссылка на сообщение
Поделиться на другие сайты

Действительно айфоны которые я добавлял, испарились, но остались четверки

 

вот линк http://demo.simplacms.ru/products?keyword=Apple+iPhone+4S+16Gb

 

Да и вообще, я добавил на демо сайт что бы показать что эта проблема не конкретно моего сайта или шаблона, а общая проблема движка.

 

Попробуйте на любом своем сайте на симпле, добавьте два товара iphone 6 16gb и iphone 6s 16gb, что бы увидеть эту проблему.

Да такая проблема есть, только что проверил.
Ссылка на сообщение
Поделиться на другие сайты

А как ее исправить то, есть идеи?

Как вариант переделать немного скрипт поиска, убрать событие onselect и переделать вывод результатов в виде ссылок на товары.

Завтра если будет время распишу (00.40 на часах).

Ссылка на сообщение
Поделиться на другие сайты

Как вариант переделать немного скрипт поиска, убрать событие onselect и переделать вывод результатов в виде ссылок на товары.

Завтра если будет время распишу (00.40 на часах).

 

Оке спасибо Noxter

Ссылка на сообщение
Поделиться на другие сайты

Уважаемые господа,

 

Подскажите пожалуйста как можно решить данную проблему

 

Есть два товара

 

iphone 6 16gb http://demo.simplacms.ru/products/iphone-6-16gb

и

iphone 6s 16gb http://demo.simplacms.ru/products/iphone-6s-16gb

 

Пишу в строке поиска: iphone 6 16gb

и попадаю на страницу результатов поиска http://demo.simplacms.ru/products?keyword=iphone+6+16gb

 

а дальше если я нажимаю снова на строку поиска происходит обновление страницы и в поиск я больше ничего написать не могу...

 

 

по вашему запросу найден один товар, потому перебрасывает на него.

 

с технической точки зрения, с поиском все норм - вы искали iphone 6 16gb

 

в товаре Apple iPhone 4S 16Gb есть iPhone, 6, и 16gb

 

https://www.ozon.ru/?context=search&text=iphone+6+16gb в поиске так же есть те модели которые мы не предполагали увидеть 

 

в ProductsView.php закомментируйте код 

 

// Если искали товар и найден ровно один - перенаправляем на него
/*
if(!empty($keyword) && $products_count == 1)
	header('Location: '.$this->config->root_url.'/products/'.$p->url);
*/
Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

по вашему запросу найден один товар, потому перебрасывает на него.

 

Нет, вопрос совсем не в этом.

 

На демо сайте

1. Создаю товар с названием 'X Y'.

2. Создаю товар с названием 'X Y Z'.

3. В живом поиска набираю 'X'. Появляется всплывающая подсказка, как и положено.

4. В живом поиска набираю 'X ' (с пробелом). Всплывающая подсказка меняется, как и положено.

5. В живом поиска набираю 'X Y'. Происходит переход по адресу http://demo.simplacms.ru/products?keyword=X+Y. В результатах поиска как минимум два товара. Никакого перехода быть не должно.

 

Почему-то срабатывает событие onSelect в скрипте подсказки...

Ссылка на сообщение
Поделиться на другие сайты

У меня получилось решить вопрос так: в index.tpl

после

            onSelect:
                function(suggestion){
                     $(".input_search").closest('form').submit();
                },
добавил               
            transformResult: function(result, query) {
                var data = JSON.parse(result);
                $(".input_search").autocomplete('setOptions', {triggerSelectOnValidInput: data.suggestions.length == 1});
                return data;
            },
 

P.S.  Придумал не сам, нашел это в OKAY CMS.

Ссылка на сообщение
Поделиться на другие сайты

У меня получилось решить вопрос так: в index.tpl

после

onSelect:

function(suggestion){

$(".input_search").closest('form').submit();

},

добавил

transformResult: function(result, query) {

var data = JSON.parse(result);

$(".input_search").autocomplete('setOptions', {triggerSelectOnValidInput: data.suggestions.length == 1});

return data;

},

 

P.S. Придумал не сам, нашел это в OKAY CMS.

Хватит пиарить этот убогий "движок"!
Ссылка на сообщение
Поделиться на другие сайты

Хватит пиарить этот убогий "движок"!

 

Там лишь честно указан источник.

 

Опять же, в теме пока никто лучшего решения не предложил. До сих пор лишь зашли два фрилансера, оба не сразу поняли вопрос, который, кстати, ТС поставил очень грамотно и точно. Один из двух счел нужным зачем-то сообщить свои планы "Завтра если будет время распишу". Завтра прошло. Надо полагать, времени не нашлось. Зато было время на самопиар - уже за 6 тыс постов наваял, из них 4 в этой теме ни о чем. Посмотрим дальше, сможет ли кто из специалистов предложить решение лучшее, или оставят простых пользователей с "убогим"...

Ссылка на сообщение
Поделиться на другие сайты

Там лишь честно указан источник.

 

Опять же, в теме пока никто лучшего решения не предложил. До сих пор лишь зашли два фрилансера, оба не сразу поняли вопрос, который, кстати, ТС поставил очень грамотно и точно. Один из двух счел нужным зачем-то сообщить свои планы "Завтра если будет время распишу". Завтра прошло. Надо полагать, времени не нашлось. Зато было время на самопиар - уже за 6 тыс постов наваял, из них 4 в этой теме ни о чем. Посмотрим дальше, сможет ли кто из специалистов предложить решение лучшее, или оставят простых пользователей с "убогим"...

Тебе гвоздь в голову нужно вбить, ты моральный урод.
Ссылка на сообщение
Поделиться на другие сайты

У меня получилось решить вопрос так: в index.tpl

после

            onSelect:

                function(suggestion){

                     $(".input_search").closest('form').submit();

                },

добавил               

            transformResult: function(result, query) {

                var data = JSON.parse(result);

                $(".input_search").autocomplete('setOptions', {triggerSelectOnValidInput: data.suggestions.length == 1});

                return data;

            },

 

P.S.  Придумал не сам, нашел это в OKAY CMS.

 

У меня это не заработало, тестил на своем шаблоне и на дефолтном,...

 

Смотрите, проблема проявляется только если скрипт увидит полное соответствие запроса с названием товара и произведет автозамену...

 

Например есть товар Apple iPhone 6 16Gb Silver и Apple iPhone 6s 16Gb Silver

если я пишу в поиске apple iphone 6 16gb, точного соответствия не будет, автозамена не сработает и при нажатии на строку поиска обновления страницы не произойдет.

 

А если я напишу apple iphone 6 16gb silver, то произойдет автозамена, текст в поисковой строке изменится на Apple iPhone 6 16Gb Silver (приобретет регистр) и проявится собственно проблема - при нажатии на поисковую строку будет перезагружаться страница.

Изменено пользователем snagovskiy
Ссылка на сообщение
Поделиться на другие сайты

Пробуйте вместо

            serviceUrl:'ajax/search_products.php',
            minChars:1,
            noCache: false,
вставить

            serviceUrl:'ajax/search_products.php',
            minChars:1,
            triggerSelectOnValidInput: false,
            noCache: false,

Ссылка на сообщение
Поделиться на другие сайты

Пробуйте вместо

            serviceUrl:'ajax/search_products.php',

            minChars:1,

            noCache: false,

вставить

            serviceUrl:'ajax/search_products.php',

            minChars:1,

            triggerSelectOnValidInput: false,

            noCache: false,

 

Попробовал, спасибо за совет, но не работает  :(

Ссылка на сообщение
Поделиться на другие сайты

Как вариант переделать немного скрипт поиска, убрать событие onselect и переделать вывод результатов в виде ссылок на товары.

Завтра если будет время распишу (00.40 на часах).

 

Noxter найди время пожалуйста

Ссылка на сообщение
Поделиться на другие сайты

Noxter найди время пожалуйста

Время есть всегда, его просто нужно выделить а не найти.

Решения выше не подходят?

Рабочий вариант на сайте клиента:

$('.autocomplete').autocomplete({
		serviceUrl:'ajax/search_products.php',
		minChars:1,
		noCache: false, 
		formatResult:
			function(suggestion, currentValue){
				var reEscape = new RegExp('(\\' + ['/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\'].join('|\\') + ')', 'g');
				var pattern = '(' + currentValue.replace(reEscape, '\\$1') + ')';
				return '<a href="products/'+suggestion.data.url+'">'+(suggestion.data.image?"<img align=absmiddle src='"+suggestion.data.image+"'> ":'') + suggestion.value.replace(new RegExp(pattern, 'gi'), '<strong>$1<\/strong>')+'</a>';
			}
	});
Сайт клиента http://militarka.com/ который делал я с нуля, там можете проверить работу поиска. Изменено пользователем Noxter
Ссылка на сообщение
Поделиться на другие сайты

 

Noxter спасибо, но это то же не зарабатало у меня, отдает 404 ошибку при выборе товара из поиска..... :(

Как выглядит ссылка?

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...