Перейти к содержанию

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

Добрый день, подскажите пожалуйста, можно ли изменить модуль поиска Ajax live search на 2.3.0 что бы автодополнение по артикулам работало так же, как и по наименованию товара? По-умолчанию автоподбор срабатывает в наименовании товаров, но для нахождения по артикулу нужно вбить артикул полностью или же проще другой поиск использовать?

Изменено пользователем DarthOlolo

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
28 минут назад, DarthOlolo сказал:

Добрый день, подскажите пожалуйста, можно ли изменить модуль поиска Ajax live search на 2.3.0 что бы автодополнение по артикулам работало так же, как и по наименованию товара? По-умолчанию автоподбор срабатывает в наименовании товаров, но для нахождения по артикулу нужно вбить артикул полностью или же проще другой поиск использовать?

 https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=26240

 

*Support for OpenCart's native filter system (Product Name, Tag, Model, SKU, UPC, EAN, JAN, ISBN, MPN)

 

Искать по модели должен. Это же у вас как Артикул?

Поделиться сообщением


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

Проще обратиться к автору модуля за доработками

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
37 минут назад, Eldaeron сказал:

 https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=26240

 

*Support for OpenCart's native filter system (Product Name, Tag, Model, SKU, UPC, EAN, JAN, ISBN, MPN)

 

Искать по модели должен. Это же у вас как Артикул?

Да, верно, артикул, и по нему он по факту ищет, но нет автодополнения... Грубо говоря если в названии начинать вбивать "Теле" то в выпадающем списке предлогает товар со схожим названием, типо "Телефон 1", "Телефон 2", "Телефон 3", "Телефон 4" "Телевизор" и т.д. Но если вбивать артикул, то идет только полное совпадение - если есть товары с артикулами телефон-1, телефон-2, телефон-3 ... и начинать вбивать "телефон-" в списке подбора ничего не будет найдено, нужно только точно указывать артикул.

Поделиться сообщением


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

Для получения списка товаров модуль использует стандартный метод getProducts
Достаточно внести небольшие изменения в запрос, чтобы было так
 

LCASE(p.model) LIKE '%" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "%'

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, thentru сказал:

Для получения списка товаров модуль использует стандартный метод getProducts
Достаточно внести небольшие изменения в запрос, чтобы было так
 


LCASE(p.model) LIKE '%" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "%'

 

Не подскажите где именно запрос должен быть, в catalog\controller\product\live_search.php? Как то поиск туго идёт этот, в прочих модулях как то проще было.

Поделиться сообщением


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

@DarthOlolo

\catalog\model\catalog\product.php

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
23 минуты назад, thentru сказал:

@DarthOlolo

\catalog\model\catalog\product.php

Спасибо огромное, нашел, исправил - результат, тот, что и нужно было)

Поделиться сообщением


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

недавно обновили концепцию артикула товара ( забита в модель) и приписали к цифровому коду буквенный индекс цветов (B,W,G,DG,ect) после чего живой поиск не воспринимает товары с новым индексом - при полном соответствии товар выдается в результатах, при частичном совпадении - нет.

В 2.1.0.2 попробовал заменить по рекомендации выше

Спойлер

if (!empty($data['filter_name'])) {
				$sql .= " OR LCASE(p.model) LIKE '%" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "%'";
				$sql .= " OR LCASE(p.sku) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'";
				$sql .= " OR LCASE(p.upc) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'";
				$sql .= " OR LCASE(p.ean) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'";
				$sql .= " OR LCASE(p.jan) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'";
				$sql .= " OR LCASE(p.isbn) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'";
				$sql .= " OR LCASE(p.mpn) = '" . $this->db->escape(utf8_strtolower($data['filter_name'])) . "'";
			}

			$sql .= ")";

При замене строки в getProduct и в getTotalProducts при попытке поиска результат выдается нулевой и вываливается куча ошибок - и вот что ему конкретно не нравится (ошибки указывают на дополнение Фикс поиска) понять не могу.  

 

Notice: Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' LIKE '%5000523%' OR LCASE(p.sku) = '5000523' OR LCASE(p.upc) = '5000523' OR ' at line 1
Error No: 1064
SELECT COUNT(DISTINCT p.product_id) AS total FROM zdt_product p LEFT JOIN zdt_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN zdt_product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pd.language_id = '1' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '0' AND ( pd.name LIKE '%5000523%' OR pd.tag LIKE '%5000523%' OR LCASE(p.model) LIKE '%5000523%' OR LCASE(p.sku) = '5000523' OR LCASE(p.upc) = '5000523' OR LCASE(p.ean) = '5000523' OR LCASE(p.jan) = '5000523' OR LCASE(p.isbn) = '5000523' OR LCASE(p.mpn) = '5000523') in /home/setsu131/public_html/system/library/db/mysqli.php on line 41Notice: Trying to get property of non-object in /home/setsu131/public_html/system/storage/modification/catalog/model/catalog/product.php on line 602Notice: Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' LIKE '%5000523%' OR LCASE(p.sku) = '5000523' OR LCASE(p.upc) = '5000523' OR ' at line 1
Error No: 1064
SELECT p.product_id, (SELECT AVG(rating) AS total FROM ***_review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating, (SELECT price FROM ***_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM ***_product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special FROM ***_product p LEFT JOIN ***_product_description pd ON (p.product_id = pd.product_id) LEFT JOIN ***_product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pd.language_id = '1' AND p.status = '1' AND p.date_available <= NOW() AND p2s.store_id = '0' AND ( pd.name LIKE '%5000523%' OR pd.tag LIKE '%5000523%' OR LCASE(p.model) LIKE '%5000523%' OR LCASE(p.sku) = '5000523' OR LCASE(p.upc) = '5000523' OR LCASE(p.ean) = '5000523' OR LCASE(p.jan) = '5000523' OR LCASE(p.isbn) = '5000523' OR LCASE(p.mpn) = '5000523') GROUP BY p.product_id ORDER BY p.sort_order ASC, LCASE(pd.name) ASC LIMIT 0,21 in /home/setsu131/public_html/system/library/db/mysqli.php on line 41Notice: Trying to get property of non-object in /home/setsu131/public_html/system/storage/modification/catalog/model/catalog/product.php on line 259Warning: Invalid argument supplied for foreach() in /home/setsu131/public_html/system/storage/modification/catalog/model/catalog/product.php on line 259

 

image.thumb.png.4152a4f723b7cf20aeeae1c729a69ed2.png

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
12 часов назад, Setsuna сказал:

и вот что ему конкретно не нравится

 

если скопировать первый запрос в notepad++

то выяснится, что в нем между

OR LCASE(p.model)

и

LIKE '%5000523%'

кто-то умудрился рядом с пробелом впихнуть спецсимвол ;)

 

A2jNIZ9uSkSVZ17v8iWFwA.png

  • +1 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 18.05.2018 в 11:07, AlexDW сказал:

 

если скопировать первый запрос в notepad++

то выяснится, что в нем между

OR LCASE(p.model)

и

LIKE '%5000523%'

кто-то умудрился рядом с пробелом впихнуть спецсимвол ;)

 

A2jNIZ9uSkSVZ17v8iWFwA.png

спасибо, ошибки ушли, правда с индексами так и неработает :(

Поделиться сообщением


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

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Похожий контент

    • От sanremosalonodessa
      Здравствуйте!
      Используется шаблон TechStore. Нужно убрать фразу при фильтрации товара - "На складе". В карточке товара эту подпись убрать удалось.
      Данная доработка выходит за пределы возможности техподдержки шаблона.
       

    • От AWARO
      Скачать/Купить дополнение


      Next Default шаблон - oc3x \ ocStore 2.1 & 2,3
      Универсальный, адаптивный, смачный, вкусный, круглосуточный
      шаблон бесплатный - потому помогаю только тем, кто оставил отзыв во вкладке отзывы
      Прочие вопросы; Не работает, кривой , косой, а как установить, зачем это, почему, зато что и т.д. оставляем в теме поддержки тут
      Версия для opencart 3x на подходе  - Демо-3x
       
      ПРЕЖДЕ ВНИМАТЕЛЬНО ЧИТАЕМ ОПИСАНИЕ!
      Разверните всё там написано подробно, непонятно спрашиваем в теме поддержки - прежде чем оставить отзыв не в тему!
      так же читаем файл readme.txt
       
      Взгрев с вашего барского плеча мона сделать  здесь  - заранее благодарю!)
       
       
      --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
        НОВИНКА - HYPER LOYALTY +   Управление лояльностью клиента +
         
       
      Внедряем новый инструмент управления лояльностью клиента  HYPER LOYALTY + и используем свой магазин по максимуму, привлекая клиентов к новым и новым покупкам!
      --------------------------------------------------------------------------------------------------------------------------------------------------------
       
      Добавил AWARO Добавлено 05.05.2016 Категория Бесплатные шаблоны Системные требования Прямые руки Сайт разработчика https://awaro.ru Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 3.0 ocStore 2.3
      2.1 OpenCart.Pro, ocShop Не проверялось  
    • От AWARO
      Универсальный, адаптивный, смачный, вкусный, круглосуточный
      шаблон бесплатный - потому помогаю только тем, кто оставил отзыв во вкладке отзывы
      Прочие вопросы; Не работает, кривой , косой, а как установить, зачем это, почему, зато что и т.д. оставляем в теме поддержки тут
      Версия для opencart 3x на подходе  - Демо-3x
       
      ПРЕЖДЕ ВНИМАТЕЛЬНО ЧИТАЕМ ОПИСАНИЕ!
      Разверните всё там написано подробно, непонятно спрашиваем в теме поддержки - прежде чем оставить отзыв не в тему!
      так же читаем файл readme.txt
       
      Взгрев с вашего барского плеча мона сделать  здесь  - заранее благодарю!)
       
       
      --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
        НОВИНКА - HYPER LOYALTY +   Управление лояльностью клиента +
         
       
      Внедряем новый инструмент управления лояльностью клиента  HYPER LOYALTY + и используем свой магазин по максимуму, привлекая клиентов к новым и новым покупкам!
      --------------------------------------------------------------------------------------------------------------------------------------------------------
       
    • От OCdevWizard
      400.00 руб · Срок продления: 200.00 руб за год
      Скачать/Купить дополнение


      Расширенный поиск PRO


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


      Админка: demo / demo | Смотреть
      Каталог: Смотреть
       


      ❏ 2.0.0.0, 2.0.1.0, 2.0.1.1, 2.0.2.0, 2.0.3.1, 2.1.0.1, 2.1.0.2, 2.2.0.0, 2.3.0.2, 3.0.0.0, 3.0.1.1, 3.0.1.2, 3.0.2.0
       


      ❏ 2.1.0.1, 2.1.0.1.1, 2.1.0.2, 2.1.0.2.1, 2.3.0.2, 2.3.0.2.1, 2.3.0.2.2, 2.3.0.2.3
       


      Украинский, Русский, Английский
       


      ❏ Расширенный поиск PRO+







      ❏ Модуль поиска с расширенным функционалом, работает без перезагрузки страницы (через Ajax).
      ❏ Модуль работает как: всплывающее окно, сворачиваемый блок, стандартный тип вывода, заменяет поле поиска или страница поиска.
      ❏ Поиск в продуктах по полях: id, name, description, tag, model, sku, upc, ean, jan, isbn, mpn, meta_title, meta_description, meta_keyword, manufacturer_name, category_name, attribute_group_name, attribute_name, attribute_value, option_name, option_value.
      ❏ Поиск в категориях по полях: id, name, description, meta_title, meta_description, meta_keyword.
      ❏ Поиск в производителях по полях: id, name.
      ❏ Поиск в статьях по полях: id, name, description, meta_title, meta_description, meta_keyword.
      ☒ Вы можете минимизировать JS-файл модуля (низкий и средний уровень).
      ☒ Вы можете настроить эффекты анимации для всплывающего модуля.
      ☒ Вы можете редактировать и восстанавливать CSS файлы модуля.
      ❏ Вы можете выбрать с какими группами клиентов будет работать модуль.
      ❏ Поддержка мультиязыков.
      ❏ Поддержка мультимагазинов.
      ❏ Вы можете редактировать основные текстовые данные модуля.
      ❏ Модуль поддерживает RTL или LTR направление текста.
      ❏ Простая установка через vQmod или OCmod.
      ❏ Модуль требует активации лицензии.
      ☒ - функциональные возможности модуля, которые отмеченные этим знаком доступны только для версии модуля PRO+.
       


      ❏ Перед покупкой, пожалуйста воспользуйтесь бесплатной утилитой "Проверка совместимости системы", для проверки совместимости вашей системы с требованиями модуля.
      ❏ PHP: >= 5.6.
      ❏ Установленная cURL библиотека.
      ❏ Установленный ionCube Loader v10.2.
      ❏ Модуль работает и на localhost, но требует активного подключения к Интернет.
       


      ❏ Пожалуйста, используйте мою службу поддержки, чтобы запросить помощь или сообщить о ошибке.
      ❏ Пожалуйста, не используйте комментарии для сообщений об ошибках.
      ❏ Техническая поддержка предоставляется бесплатно. Обратите внимание, что платная техническая поддержка выполняется в случаях, когда существует конфликт с внешними модулями/продуктами/шаблонами. Пожалуйста, примите это с пониманием того, что разработчик не может сделать собственный модуль на 100% совместимым со всеми внешними расширениями. Вот почему в некоторых случаях необходимо адаптировать модуль к нестандартной конфигурации и системным настройкам магазина. Поэтому решение таких проблем будет оплачиваться отдельно от стоимости модуля.
       


      ❏ Вы можете использовать модуль только на одном своем домене (например http://site.com), а также на под доменах этого домена (например http://test.site.com или http://site.com/test/).
      ❏ Вы не можете продавать или перепродавать этот модуль без письменного разрешения от автора (OCdevWizard).
      ❏ Вы не можете давать в качестве подарка или распространять этот модуль без письменного разрешения от автора (OCdevWizard).
      ❏ Вы не можете представлять этот модуль как ваш собственный. Пожалуйста уважайте время и труд, которое автор потратил на создание этого модуля.
      ❏ Вы не можете удалять копирайт из файлов модуля от автора (OCdevWizard).
      ❏ Вы должны использовать мою службу поддержки для активации лицензии модуля.
       


      ❏ Mijoshop, Aceshop
      Добавил OCdevWizard Добавлено 05.04.2018 Категория Модули Системные требования PHP >=5.6; Mysqli; cURL; IonCube Loader v10.2 Сайт разработчика http://ocdevwizard.com/ Старая цена 1200 Метод активации Через официальный сайт дополнения Ioncube Loader Требуется OpenCart 3.0
      2.3
      2.2
      2.1
      2.0 ocStore 2.3
      2.2
      2.1 OpenCart.Pro, ocShop Не проверялось  
    • От OCdevWizard
      Модуль - расширенный поиск. Быстрая и эффективная работа модуля, поиск по большому списку критериев. Большая и расширенная система настроек делают этот модуль абсолютно уникальным и гибким для каждого магазина.поиск,удобный поиск,расширенный поиск,поиск по опциям,поиск по категориям,поиск по товарам,поиск по статьям,улучшенный поиск,поиск по атрибутам
       


      Админка: demo / demo | Смотреть
      Каталог: Смотреть
       


      ❏ 2.0.0.0, 2.0.1.0, 2.0.1.1, 2.0.2.0, 2.0.3.1, 2.1.0.1, 2.1.0.2, 2.2.0.0, 2.3.0.2, 3.0.0.0, 3.0.1.1, 3.0.1.2, 3.0.2.0
       


      ❏ 2.1.0.1, 2.1.0.1.1, 2.1.0.2, 2.1.0.2.1, 2.3.0.2, 2.3.0.2.1, 2.3.0.2.2, 2.3.0.2.3
       


      Украинский, Русский, Английский
       


      ❏ Расширенный поиск PRO+







      ❏ Модуль поиска с расширенным функционалом, работает без перезагрузки страницы (через Ajax).
      ❏ Модуль работает как: всплывающее окно, сворачиваемый блок, стандартный тип вывода, заменяет поле поиска или страница поиска.
      ❏ Поиск в продуктах по полях: id, name, description, tag, model, sku, upc, ean, jan, isbn, mpn, meta_title, meta_description, meta_keyword, manufacturer_name, category_name, attribute_group_name, attribute_name, attribute_value, option_name, option_value.
      ❏ Поиск в категориях по полях: id, name, description, meta_title, meta_description, meta_keyword.
      ❏ Поиск в производителях по полях: id, name.
      ❏ Поиск в статьях по полях: id, name, description, meta_title, meta_description, meta_keyword.
      ☒ Вы можете минимизировать JS-файл модуля (низкий и средний уровень).
      ☒ Вы можете настроить эффекты анимации для всплывающего модуля.
      ☒ Вы можете редактировать и восстанавливать CSS файлы модуля.
      ❏ Вы можете выбрать с какими группами клиентов будет работать модуль.
      ❏ Поддержка мультиязыков.
      ❏ Поддержка мультимагазинов.
      ❏ Вы можете редактировать основные текстовые данные модуля.
      ❏ Модуль поддерживает RTL или LTR направление текста.
      ❏ Простая установка через vQmod или OCmod.
      ❏ Модуль требует активации лицензии.
      ☒ - функциональные возможности модуля, которые отмеченные этим знаком доступны только для версии модуля PRO+.
       


      ❏ Перед покупкой, пожалуйста воспользуйтесь бесплатной утилитой "Проверка совместимости системы", для проверки совместимости вашей системы с требованиями модуля.
      ❏ PHP: >= 5.6.
      ❏ Установленная cURL библиотека.
      ❏ Установленный ionCube Loader v10.2.
      ❏ Модуль работает и на localhost, но требует активного подключения к Интернет.
       


      ❏ Пожалуйста, используйте мою службу поддержки, чтобы запросить помощь или сообщить о ошибке.
      ❏ Пожалуйста, не используйте комментарии для сообщений об ошибках.
      ❏ Техническая поддержка предоставляется бесплатно. Обратите внимание, что платная техническая поддержка выполняется в случаях, когда существует конфликт с внешними модулями/продуктами/шаблонами. Пожалуйста, примите это с пониманием того, что разработчик не может сделать собственный модуль на 100% совместимым со всеми внешними расширениями. Вот почему в некоторых случаях необходимо адаптировать модуль к нестандартной конфигурации и системным настройкам магазина. Поэтому решение таких проблем будет оплачиваться отдельно от стоимости модуля.
       


      ❏ Вы можете использовать модуль только на одном своем домене (например http://site.com), а также на под доменах этого домена (например http://test.site.com или http://site.com/test/).
      ❏ Вы не можете продавать или перепродавать этот модуль без письменного разрешения от автора (OCdevWizard).
      ❏ Вы не можете давать в качестве подарка или распространять этот модуль без письменного разрешения от автора (OCdevWizard).
      ❏ Вы не можете представлять этот модуль как ваш собственный. Пожалуйста уважайте время и труд, которое автор потратил на создание этого модуля.
      ❏ Вы не можете удалять копирайт из файлов модуля от автора (OCdevWizard).
      ❏ Вы должны использовать мою службу поддержки для активации лицензии модуля.
       


      ❏ Mijoshop, Aceshop
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×