Мерчандайзер: сортировка товаров

Рейтинг:
60 000 тг.
Работает на редакциях Битрикс:
Малый бизнесБизнесИнтернет-магазин + CRM
Выберите подарок При покупке данного товара вам полагается один из подарков представленных ниже
Помощь, техподдержка
Нужна помощь?
Поможем с настройкой "Мерчандайзер: сортировка товаров"

Описание
Модуль «Мерчандайзер: сортировка товаров» (1С Битрикс: Управление сайтом) предназначен для создания и изменения сортировки и ее порядка в каталоге товаров по различным полям (цена, дата, наличие, скидка, популярность, количество заказов, ID раздела, алфавиту и многим другим свойствам товаров и торговых предложений). Возможности настройки позволяют профессионально и автоматически производить эффективное отображение (выкладку) товара в каталоге.

Ценность
В умелых руках, модуль позволяет создать эффективную сортировку товаров, которая увеличит конверсии, суммы заказов и другие коммерческие показатели, на которые влияет «выкладка» товара.

Согласитесь, что, например, при стандартной сортировке товаров по цене (от дешевых к дорогим), будет не самым лучшим решением показывать в начале товары у которых хоть и самая низкая цена, но которые практически никто не покупает (или того хуже — не в наличии). Возможно, что посетитель в таком случае просто не доберется до ликвидных товаров у которых цена чуть-чуть выше (особенно при большом ассортименте).

Модуль позволяет решить эту и другие подобные ситуации в пользу бизнеса.
 
Предупреждения
  • Сортировка с помощью модуля доступна с версии модуля iblock 20.0.400 в компонентах-наследниках класса \Bitrix\Iblock\Component\ElementList
  • Модуль предназначен для опытных пользователей, прошедших как минимум курс «Контент-менеджер».
Рекомендации
Для раскрытия всех возможностей и использования модуля с максимальной эффективностью, рекомендуется:
  • производить внедрение совместно с разработчиком и профессиональным маркетологом
  • применять разные правила для разных категорий товаров, проводить тесты и вести аналитику.
Возможности
  • Неограниченное количество сортировок
  • Неограниченное количество правил для каждой сортировки
  • Многоуровневые условия для правила сортировки
  • Комбинированные условия и группы условий
  • Возможность использования логических операторов «И» и «ИЛИ», а так же условий «равно», «не равно», «больше или равно», «меньше или равно», «больше», «меньше», «содержит» или «не содержит»
  • Возможность использовать направления сортировки: возрастание, убывание, возрастание с пустыми значениями в начале, возрастание с пустыми значениями в конце, убывание с пустыми значениями в начале, убывание с пустыми значениями в конце
  • Вычисление отдельных индивидуальных значений сортировки для каждого товара
  • Возможность создания агентов для автоматического обновления значений свойств сортировки (требуется, если в правилах сортировки используются динамические свойства)
Доступные поля для создания правил сортировки
  • свойства товара (его различные характеристики: артикул, изображение, габариты, производитель, акции, хиты и так далее)
  • параметры товара (доступность, количество на складе, цена, закупочная стоимость, тип и т.п.)
  • количество продаж товара и сумма на которую товар был продан (с учетом статуса заказа и периодом), количество показов
  • свои поля (достаточно указать символьный код)
  • ID элемента и раздела (с учетом и без подраздела)
  • существующий индекс сортировки товара
  • название, символьный код
  • дата и время создания или изменения
  • активность (включая начало и окончание)
  • наличие картинки или описания
  • внешний код, теги

Инструкция

Установка

Модуль устанавливается стандартными средствами Битрикс. Сразу после установки модуль готов к работе и не требует настройки.
Использование
Рассмотрим использование модуля на примере средней сложности в 2-ух исполнениях:
  1. изменим алгоритм уже существующей сортировки
  2. создадим новую сортировку и отобразим управляющие элементы.
1. Изменение алгоритма стандартной сортировки.

Имеется небольшой розничный интернет-магазин пряжи. Его основной и самый востребованный ассортимент — первичная трикотажная пряжа «Стандарт» (по 1 рулону). В структуре ее можно найти по адресу: Каталог — Трикотажная пряжа — Первичная пряжа — Стандарт. Но если мы заходим в главный раздел «Трикотажная пряжа», то видим, что используется стандартная сортировка по популярности и в самом начале отображаются товары из всех подразделов (вторичная пряжа, наборы и т.п., см. рис.).
 
Фото 1: «Мерчандайзер: сортировка товаров»
 
Нам бы хотелось в главном разделе «Трикотажная пряжа» увидеть в первую очередь товары из нужной нам под-категории (первичная трикотажная пряжа «Стандарт»), в наличии и от дешевых к дорогим.
Как только мы установили модуль, переходим к созданию своей сортировки. Для этого, в административном интерфейсе следуем по пути: «Контент» - «Мерчендайзер: сортировка товаров» - «Список сортировок». Нажимаем кнопку «+ Новая сортировка».
На странице создания сортировки, мы должны указать ее название, символьный код и выбрать инфоблок с нашим каталогом товаров и нажать кнопку «Сохранить» (см. рис).

 
Фото 2: «Мерчандайзер: сортировка товаров»

Теперь нам необходимо создать правило для нашей сортировки. Для этого следуем по пути: «Контент» - «Мерчендайзер: сортировка товаров» - «Список правил сортировок» и выбираем пункт с только что созданной нами сортировкой. Нажимаем кнопку «+ Новое правило сортировки».

Правило для сортировки которую мы хотим - комбинированное (состоит из нескольких условий). Для комбинированных правил, модуль для каждого товара вычисляет уникальное значение сортировки, исходя из объявленных условий. Это значение как раз и используется для сортировки по нескольким свойствам (оно хранится в отдельном инфоблоке модуля). Т.к. значение зависит от изменяющихся свойств (у товара, например, может одновременно измениться цена и наличие в любой момент), необходимо поддерживать его актуальность. Для этого предусмотрена функция создания агентов для перерасчета значений сортировки.

На странице настроек правила сортировки необходимо указать его название. В поле «Создать агента:» выбираем «Да». Выбираем нужный сайт из списка, а в качестве основного раздела - «Трикотажная пряжа». Нажимаем кнопку «Применить» (см. рис).

Фото 3: «Мерчандайзер: сортировка товаров»
Не покидая страницу, переходим на вкладку «Сортировка», где зададим условия для нашего правила сортировки.
Сортировка происходит по уровням. Сначала элементы сортирует первый уровень: элементы с одинаковой сортировкой первого уровня разбиваются на группы. Второй уровень сортирует элементы в каждой группе первого уровня: элементы с одинаковой сортировкой второго уровня разбиваются на группы и т.д.
Добавим первый уровень сортировки с опцией «Комбинация полей». На этом уровне мы сортируем товары, присваивая каждому из них определенное значение сортировки, поэтому поле сортировки по-умолчанию является «число». Мы сразу можем определить порядок сортировки на этом уровне, исходя из значений, которые будут вычислены для каждого товара.

Нажимаем «Добавить значение» и задаем условия, используя логические операторы, чтобы определить: каким товарам нужно присвоить новое значение (см. рис.).

Фото 4: «Мерчандайзер: сортировка товаров»

Согласно нашим пожеланиям, нам нужно отобрать в первую очередь товары из под-раздела с идентификатором 251 (укажем его в соответствующем поле) и доступным количеством больше нуля (в наличии). Так мы и сделали, используя логический оператор «И».

На первом уровне мы отобрали нужные товары, теперь наша задача отсортировать их по цене (от меньшей к большей) на втором уровне сортировки. Для второго уровня нам уже не нужны комбинации полей, поэтому выберем опцию второго уровня - «Одно поле: стандартные поля и свойства». Указываем поле цены, задаем направление и нажимаем кнопку «Сохранить и обновить значения свойств сортировки», чтобы был произведен расчет значений. Наша сортировка готова (см. рис). Осталось только добавить необходимый код в шаблон сайта.

Фото 5: «Мерчандайзер: сортировка товаров»

Для сортировки с помощью модуля, в параметры компонента (компоненты-наследники класса \Bitrix\Iblock\Component\ElementList) необходимо добавить параметр: "CUSTOM_ELEMENT_SORT" => $arParams["CUSTOM_ELEMENT_SORT"] (это массив с полями сортировки), а перед вызовом компонента сформировать этот массив с помощью метода \Profistudio\Merchandiser\Tools::includeComponent().

В нашем примере используется готовое решение для интернет-магазина - «Аспро: Next». Шаблон, где объявлен компонент «bitrix:catalog.section», в нашем случае находился по адресу: «/bitrix/templates/aspro_next/components/bitrix/catalog/main/page_blocks/list_elements.php».

Формирование массива выполняется следующим кодом:
<?
if(\Bitrix\Main\Loader::includeModule("profistudio.merchandiser"))
{         \Profistudio\Merchandiser\Tools::includeComponent(
      "1", // ID сортировки
      $arParams["CUSTOM_ELEMENT_SORT"], // Массив с полями сортировки
      $arParams["IBLOCK_ID"], // ID инфоблока
      $arResult["VARIABLES"]["SECTION_ID"], // ID раздела
      $arResult["VARIABLES"]["SECTION_CODE"], // Символьный код раздела
      $arParams // Параметры кеширования
);}
?>
В качестве ID сортировки нужно указать идентификатор созданной нами ранее сортировки (у нас это 1).
Код необходимо установить перед подключением компонента «bitrix:catalog.section», а в массив параметров компонента добавить "CUSTOM_ELEMENT_SORT" => $arParams["CUSTOM_ELEMENT_SORT"] (см. рис).

Фото 6: «Мерчандайзер: сортировка товаров»

Сохраняем изменения и обновляем страницу с товарами нашей категории, для которой мы создавали свою сортировку. Теперь там отображаются товары, согласно ранее заявленным условиям вне зависимости от того какая сортировка используется по-умолчанию (см. рис).

Фото 7: «Мерчандайзер: сортировка товаров»

Подключение модуля кодом сделано не просто так, а позволяет более гибко (с помощью разработчика) настраивать параметры в шаблоне в зависимости от необходимых условий. Например, собственную сортировку мы можем применять не по-умолчанию (вне зависимости какая уже сортировка используется), а только в случаях когда выбрана определенная сортировка из имеющихся (стандартных). То есть таким образом мы «кастомизируем» стандартную сортировку за счет собственной и можем точечно менять поведение алгоритма, например, при выбранной сортировке «По цене».

2. Создание новой сортировки с управляющими элементами.
Процесс аналогичен п.1, поэтому мы создадим более простые сортировки для того же раздела в каталоге, но уделим внимание параметрам компонента и управляющим элементам сортировок.

Создадим сразу 2 сортировки и назовем их «Покупают — много» и «Покупают — мало». Для каждой сортировки создаем по 1 правилу. У нас будет 1 уровень сортировки для правила, где полем будет являться «Количество продаж товара». В зависимости от того для какой сортировки мы создаем правило, укажем: направление сортировки, статус заказа и период подсчета. В нашем случае, для правила сортировки «Покупают — много» первый уровень будет выглядеть так (см. рис).

Фото 8: «Мерчандайзер: сортировка товаров»
Не забываем добавить агентов в настройку правила, т.к. количество продаж товара величина изменчивая и необходимо будет обновлять значения сортировки.

Теперь нам следует заменить код, который мы устанавливали ранее до подключения компонента «bitrix:catalog.section» на этот:
 
<?
 $arParams["CUSTOM_ELEMENT_SORT"] = $APPLICATION->IncludeComponent(
   "profistudio:merchandiser.sort.list",
   "select", // Шаблон (".default" - ссылки, "select" - выбор из списка)
   array(
      "IBLOCK_ID" => "17", // ID инфоблока
      "SECTION_CODE" => $arResult["VARIABLES"]["SECTION_CODE"], // Символьный код раздела
      "SECTION_ID" => $arResult["VARIABLES"]["SECTION_ID"], // ID раздела
      "SORT_LIST" => array(0 => "1"), // ID сортировок
      "SORT_ID_DEFAULT" => "1", // ID сортировки по умолчанию
      "NAME" => "Сортировка:", // Название
      "SORT_PARAMETER" => "my_sort", // Название параметра для сортировки
      "SAVE_SESSION" => "Y", // Сохранять выбранную сортировку в сессию
      "CACHE_TYPE" => "A",
      "CACHE_TIME" => "36000000"
   ),
   false
);
?>
Нам следует указать лишь «IBLOCK_ID» - идентификатор нашего инфоблока (в нашем случае, инфоблок каталога имеет id=17), а остальные настройки мы уже произведем в публичной части.
Сохраняем изменения и переходим в наш раздел каталога. В публичной части (в режиме «правки») мы увидим компонент «Мерчандайзер: список сортировок», параметры которого мы уже можем легко изменить (см. рис).

Фото 9: «Мерчандайзер: сортировка товаров»
  • Шаблон компонента — определяет как будут отображаться сортировки (в виде кнопок - «.default» или в виде списка - «select»).
  • ID сортировок — в этом поле нам следует отметить 2 наши созданные сортировки, которые мы хотим отобразить.
  • ID сортировки по умолчанию — выбираем одну из наших сортировок.
  • Название — подпись к списку наших сортировок.
  • Название параметра для сортировки — отображается в адресной строке, при выполнении сортировки.
  • Сохранять выбранную сортировку в сессию — оставьте отмеченным, если хотите чтобы у пользователя сохранялась выбранная сортировка.
Применяя настройки, мы получим следующий результат (см. рис). Предыдущую (стандартную) сортировку мы можем удалить, чтобы оставалась только наша.

Фото 10: «Мерчандайзер: сортировка товаров»

Разработчик Profi
Опубликовано 19.07.2022
Обновлено 28.04.2023
Версия 1.1.0
Установлено 50 - 99 раз
Адаптивность Да
Поддержка Композита Да
Подходящие редакции Малый бизнес, Бизнес, Интернет-магазин + CRM
Пробный период Есть
Пробный период, дней 7