Битрикс поиск по артикулу Часть 2 (по любой части артикула)

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

Как искать товар по части артикула в Битриксе

Как и раньше, открываем папку с вашим шаблоном который может лежать как в папке bitrix так и в local. У меня это:

где next — папка шаблона.
Заходим в шаблон fixed (для компонента search.title), ищем файл result_modifier.php и добавляем код в конец файла:

Посмотрим как поменялся код из первой части статьи, на новый:

Что изменилось
— в выборку полей arSelect добавили свойство с артикулом, позже вы узнаете зачем — PROPERTY_CML2_ARTICLE
— теперь мы собираем в массив вместо 1 найденного товара
— поисковая строка теперь выглядит вот так ‘PROPERTY_CML2_ARTICLE’ => ‘%’.$arResult[‘query’].’%’ — что означает, искать везде, как в начале, так и в середине, так и в самом конце артикула (поиск по маске, не точное вхождени)

Напоминаю, поиск по артикулу начинает работать только если не найдены товары по имени — если вас это не устраивает, переписывайте 🙂

Часть 2. Меняем файл ajax.php и заменяем начало файла на:

Помните, мы добавляли в выборку артикул — так вот, теперь вы сможете выделять товары, если нашлись по артикулу:

Проверку на поле делать не надо, т.к. по нему и идет поиск. В целом, в этом файле проверяем есть ли первый элемент массива (который начинается с 0), и затем запускаем foreach для того чтобы пройтись по циклу и вывести все результаты.

Надеюсь вам понравились эти 2 части статьи, и у вас всё получилось.

Если на вашем сайте нужно усовершенствовать поиск, добавить поиск по другим свойствам товара, ID или артикулу, обращайтесь ко мне за помощью

автор: Dmitriy

Занимаюсь веб-разработкой с 2011 года. Посмотреть некоторые из моих работ, а также узнать чуть больше обо мне, вы можете на forwww.com/dmitriy/.

Какие услуги предоставляю:
- Создание сайтов, шаблонов и компонентов на 1С-Битрикс;
- Разработка функционала с нуля и доработка кода на уже созданных проектах;
- Адаптивная вёрстка макетов и натяжка на Битрикс;
- Парсинг файлов и выгрузка на сайт (форматы - CSV, XML, XLSX, JSON)
- Интеграции со сторонними сервисами по API;
- Многоязычные версии и многое другое.

Если у вас остались вопросы, свяжитесь со мной любым удобным для вас способом или оставьте комментарий внизу.
E-mail: dmitriyribka@gmail.com
Skype: cinemacreaterus

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *