Документация для разработчиков
Темная тема

Элементы раздела

Компонент выводит список элементов раздела с указанным набором свойств.


Описание catalog.section

Компонент содержит шесть шаблонов: store_v3, .default, board, links, list и bootstrap_v4. Компонент стандартный и входит в дистрибутив модуля.

В визуальном редакторе компонент расположен по пути Контент > Каталог > Элементы раздела.

Компонент относится к модулю Информационные блоки.



Параметры

Поле Параметр Описание Примечание
Основные параметры
Тип инфоблока IBLOCK_TYPE Указывается один из созданных в системе типов информационных блоков.
Инфоблок IBLOCK_ID Для выбранного типа инфоблоков указывается идентификатор информационного блока, из которого будет выводиться список элементов.
ID раздела SECTION_ID Указывается числовой код, в котором передается идентификатор раздела. Поле может быть оставлено пустым, если указан Код раздела. При включенном режиме ЧПУ параметры настраиваются в секции Управление адресами страниц.
Код раздела SECTION_CODE Указывается символьный код раздела, из которого будут выбраны элементы. Поле может быть оставлено пустым, если указан ID раздела.
Источник данных
Свойства раздела SECTION_USER_FIELDS Указываются свойства раздела, которые будут отображены на странице. Заполняется из публичной части редактора, удерживая клавишу Ctrl либо в коде, указывая массив. При выборе пункта (не выбрано)-> и без указания вычисления полей в строках ниже, свойства не будут выведены.
Имя массива со значениями фильтра для фильтрации элементов FILTER_NAME Задается имя переменной, в которую передается массив параметров из фильтра. Если имя массива не указано, то будет использоваться значение по умолчанию.
Показывать элементы подразделов раздела INCLUDE_SUBSECTIONS [Y|N] При отмеченной опции будут отображены элементы подразделов раздела.
Показывать все элементы, если не указан раздел SHOW_ALL_WO_SECTION [Y|N] При отмеченной будут отображены все элементы, если не указан раздел.

Если установить параметр в 'Y', то из ссылок на товары пропадает раздел, т.е. параметр DETAIL_URL перестаёт правильно работать. В этом случае установите скрытый параметр "BY_LINK"=> "Y".

Если установить параметр в 'N' и при отсутствии раздела будут показаны товары, не привязанные ни к одному разделу. Если при этом передать INCLUDE_SUBSECTIONS = Y - будет выполнена выборка по всему инфоблоку без ограничения по разделам.


Фильтр товаров CUSTOM_FILTER В данном поле настраиваются условия отбора товаров для показа. Выбор каждого условия осуществляется из выпадающего списка, доступного по ссылке Добавить условие. Для выбранного поля/свойства товара задается соответствие некоторому значению. Допускается создание нескольких условий и использование между ними как логики "И", так и логики "ИЛИ".


Недоступные товары HIDE_NOT_AVAILABLE Указывается способ отборажения недоступных для покупки товаров:
  • Y - не отображать;
  • L - отображать в конце;
  • N - отображать в общем списке.
Примечание: недоступные для покупки товары - это товары, для которых количество меньше либо равно нулю, включен количественный учет и не разрешена покупка при отсутствии товара.

Недоступные торговые предложения HIDE_NOT_AVAILABLE_OFFERS Указывается способ отборажения недоступных для покупки торговых предложений:
  • Y - не отображать;
  • L - отображать только с возможностью подписки;
  • N - отображать все.

Настройки сортировки
По какому полю сортируем элементы ELEMENT_SORT_FIELD Указывается поле, по которому будет происходить сортировка элементов:
  • shows – по количеству просмотров в среднем;
  • sort – по индексу сортировки;
  • timestamp_x – по дате изменения;
  • name – по названию;
  • id – по идентификатору; С версии 18.6.900 наследники класса \Bitrix\Iblock\Component\ElementList
    поддерживают сортировку по последовательности ID элементов.

    В параметры компонента передаётся:
    "ELEMENT_SORT_FIELD" => "ID",
    "ELEMENT_SORT_ORDER" => $arElements // массив ID в нужном порядке
    "FILTER_NAME" => "arrFilter"
    В фильтр компонента передаётся такой же массив:
    global $arrFilter;
    
    $arrFilter = ['ID' => $arElements];
  • active_from – по дате активности с;
  • active_to – по дате активности по;
  • SCALED_PRICE_[ID] – по типу цен (вместо [ID] - идентификатор типа цены)

О дополнительных возможностях сортировки читайте в уроке Сортировка в компонентах.

Порядок сортировки элементов ELEMENT_SORT_ORDER Задается порядок сортировки элементов:
  • ascПо возрастанию;
  • descПо убыванию.

Поле для второй сортировки элементов ELEMENT_SORT_FIELD2 Указывается поле, по которому будет происходить вторая сортировка элементов:
  • shows – по количеству просмотров в среднем;
  • sort – по индексу сортировки;
  • timestamp_x – по дате изменения;
  • name – по названию;
  • id – по идентификатору;
  • active_from – по дате активности с;
  • active_to – по дате активности по;
  • SCALED_PRICE_[ID] – по типу цен (вместо [ID] - идентификатор типа цены)

Порядок второй сортировки элементов ELEMENT_SORT_ORDER2 Задается порядок второй сортировки элементов:
  • ascПо возрастанию;
  • descПо убыванию.

По какому полю сортируем предложения товара OFFERS_SORT_FIELD Указывается поле, по которому сортируется весь список предложений товара.

См. примечание в конце страницы.
Данные параметры появляются при настройке компонента на инфоблок с поддержкой SKU.
Порядок сортировки предложений товара OFFERS_SORT_ORDER Выбирается как сортировать предложения товара: по возрастанию, или по убыванию.
Поле для второй сортировки предложений товара OFFERS_SORT_FIELD2 Указывается поле, по которому выполняется вторая сортировка списка предложений товара.

См. примечание в конце страницы.
Порядок второй сортировки предложений товара OFFERS_SORT_ORDER2 Выбирается направление второй сортировки предложений товара: по возрастанию, или по убыванию.
Внешний вид
Свойства PROPERTY_CODE Указываются свойства инфоблока, которые будут отображены при показе элементов в таблице. При выборе пункта (не выбрано)-> и без указания кодов свойств в строках ниже, свойства выведены не будут.

Внимание! При включенной опции Использовать параметры свойств в компонентах и формах эта настройка может быть скрыта. В этом случае показ свойств настраивается только в форме редактирования инфоблока . Подробнее о настройке свойств инфоблока в уроке.


Количество элементов выводимых в одной строке таблицы LINE_ELEMENT_COUNT Число определяет количество элементов в одной строке при выводе элементов раздела. Для шаблона по умолчанию возможные значения - от 2 до 5. Параметр доступен только для шаблона store_v3.
Свойства товаров, отображаемые на мобильных устройствах PROPERTY_CODE_MOBILE Выбираются свойства инфоблока (перечень формируется из выбранных в параметре выше свойств), которые будут отображены в списке товаров при просмотре с мобильных устройств.
Поля предложений OFFERS_FIELD_CODE Выбираются поля предложений. С помощью клавиши Ctrl можно выбрать несколько значений. Данный параметр появляется при настройке компонента на инфоблок с поддержкой SKU.
Свойства предложений OFFERS_PROPERTY_CODE Указываются свойства предложений. Можно добавлять свои. Данный параметр появляется при настройке компонента на инфоблок с поддержкой SKU.

Внимание! При включенной опции Использовать параметры свойств в компонентах и формах эта настройка может быть скрыта. В этом случае показ свойств настраивается только в форме редактирования инфоблока . Подробнее о настройке свойств инфоблока в уроке.


Максимальное количество предложений для показа OFFERS_LIMIT Указывается максимальное для вывода на страницу число предложений (0 - все). Параметр доступен, если опция Включить режим совместимости включена.
Установить фоновую картинку для шаблона из свойства BACKGROUND_IMAGE Указывается свойство, в котором хранится картинка для фона.

Свойство должно быть немножественным типа Файл.

Важно! В шаблоне сайта должна быть реализована поддержка этого функционала: в необходимом вам теге должно быть прописано:
<?=$APPLICATION->ShowProperty("backgroundImage")?>

Цветовая тема TEMPLATE_THEME Задается цветовая схема для отображения элементов раздела. По умолчанию используется синяя схема (blue).
Вариант отображения товаров PRODUCT_ROW_VARIANTS В правой части поля выберите блок с подходящим вам вариантом отображения одной строки товаров на странице и перетащите его в левую часть.
Количество товаров на странице PAGE_ELEMENT_COUNT Отображается информация по количеству товаров на странице в соответствии с выбранным вариантом отображения товаров.
Выделять товары в списке ENLARGE_PRODUCT Выберите способ выделения товаров в списке:
  • по выбранному шаблону (строго) - товар будет выделятся строго по настроенному варианту отображения товаров;
  • по свойству, подгонять по шаблону (в этом случае возможно изменение сортировки элементов) - в списке будет выделяться тот товар, для которого заполнено указанное в параметре Выделять по выбранному свойству свойство.
Примечание: выделение товаров осуществляется в том случае, если для показа списка товаров выбран хотя бы один вариант вида:


Порядок отображения блоков товара PRODUCT_BLOCKS_ORDER Перетаскивая блоки, определите необходимый вам порядок следования блоков товара.


Показывать слайдер для товаров SHOW_SLIDER [Y|N] При отмеченной опции для товаров будет использоваться слайдер для показа изображений, станет доступно дополнительное поле
Интервал смены слайдов, мс SLIDER_INTERVAL Указывается интервал смены слайдов в миллисекундах. Параметры настраиваются, если отмечена опция Показывать слайдер для товаров.
.

Показывать полосу прогресса SLIDER_PROGRESS [Y|N] При отмеченной опции будет отображаться полоса прогресса до начала показа следующего слайда.
Выделять по выбранному свойству ENLARGE_PROP Указывается то свойство товара, при наличии которого товар будет выделен в списке просмотренных (если позволяет вариант отображения товаров, см. поле Вариант отображения товаров). Параметр доступен, если в параметре Выделять товары в списке указано значение по свойству (подгонять по шаблону).
Схема отображения PRODUCT_DISPLAY_MODE Задается режим отображения товаров: простой (N) или расширенный (Y). Параметр доступен для инфоблока с торговыми предложениями.
Дополнительная картинка основного товара ADD_PICT_PROP Задается свойство, в котором хранится дополнительная картинка для основного товара.
Свойство меток товара LABEL_PROP Указываются свойство, в котором хранится метка товара (например, новинка).
Свойства меток товара, отображаемые на мобильных устройствах LABEL_PROP_MOBILE Выбираются свойства меток (перечень формируется из выбранных в параметре выше свойств), которые будут отображены в списке товаров при просмотре с мобильных устройств.
Расположение меток товара LABEL_PROP_POSITION Выберите подходящее место для меток на карточке товара.
Дополнительные картинки предложения OFFER_ADD_PICT_PROP Задается свойство, в котором хранится дополнительная картинка для торгового предложения. Параметр доступен для инфоблока с торговыми предложениями.. Данные настройки доступны, если в параметре Схема отображения выбрано значение расширенный.
Использовать названия торговых предложений USE_OFFER_NAME [Y|N] При отмеченной опции вместо названия основного товара будут использоваться названия торговых предложений.
Свойства для отбора предложений OFFER_TREE_PROPS Указываются свойства, по значениям которых будут группироваться торговые предложения. Параметр доступен для инфоблока с торговыми предложениями.

Внимание! При включенной опции Использовать параметры свойств в компонентах и формах эта настройка может быть скрыта. В этом случае показ свойств настраивается только в форме редактирования инфоблока . Подробнее о настройке свойств инфоблока в уроке.

Разрешить оповещения для отсутствующих товаров PRODUCT_SUBSCRIPTION [Y|N] При отмеченной опции клиент будет оповещаться, что интересующий его товар стал доступным для покупки.
Показывать процент скидки SHOW_DISCOUNT_PERCENT [Y|N] При отмеченной опции будет отображаться процентное значение скидки, если она задана, станет доступно дополнительное поле
Расположение процента скидки "DISCOUNT_PERCENT_POSITION Выберите подходящее место для отображения процентной скидки на карточке товара.
.

Показывать старую цену SHOW_OLD_PRICE [Y|N] Если задана скидка на товар, то при отмеченной опции будет отображаться старая цена.
Показывать остаток товара SHOW_MAX_QUANTITY Укажите способ отображения остатка товара:
  • не показывать;
  • с отображением реального остатка - в этом случае необходимо настроить параметр Текст для остатка
    Текст для остатка MESS_SHOW_MAX_QUANTITY Задается текст для отображения информации о наличии товара. Доступность данных параметров компонента определяется настройками параметра Показывать остаток товара.
    ;
  • с подменой остатка текстом - в этом случае необходимо настроить параметры
    Текст для остатка MESS_SHOW_MAX_QUANTITY Задается текст для отображения информации о наличии товара.
    Значение, от которого происходит подмена RELATIVE_QUANTITY_FACTOR Указывается значение, меньше (больше) которого о количестве товара на складе будет отображаться выражение, что товара мало (много).
    Текст для значения больше MESS_RELATIVE_QUANTITY_MANY Задается текст, который будет отображаться при наличии товара в количестве большем, чем значение в параметре Значение, от которого происходит подмена.
    Текст для значения меньше MESS_RELATIVE_QUANTITY_FEW Задается текст, который будет отображаться при наличии товара в количестве меньшем, чем значение в параметре Значение, от которого происходит подмена..
    Текст для остатка, Значение, от которого происходит подмена, Текст для значения больше и Текст для значения меньше.

Показывать кнопку продолжения покупок во всплывающих окнах SHOW_CLOSE_POPUP [Y|N] При отмеченной опции будет отображаться кнопка Продолжить покупки во всплывающем окне, появляющемся после добавления товара в корзину.
Текст кнопки "Купить" MESS_BTN_BUY Задается текст, который должен быть отображен на кнопке "Купить".
Текст кнопки "Добавить в корзину" MESS_BTN_ADD_TO_BASKET Задается текст, который должен быть отображен на кнопке добавления в корзину.
Текст кнопки "Уведомить о поступлении" MESS_BTN_SUBSCRIBE Задается текст, который должен быть отображен на кнопке уведомления о поступлении товара.
Текст кнопки "Подробнее" MESS_BTN_DETAIL Задается текст, который должен быть отображен на кнопке "Подробнее".
Сообщение об отсутствии товара MESS_NOT_AVAILABLE Указывается текст, который будет отображаться при отсутствии товара и невозможности его купить.
Сообщение о недоступности услуги MESS_NOT_AVAILABLE Указывается текст, который будет отображаться при недоступности услуги.
Начальное смещение (скролл) блока разделов SECTIONS_OFFSET_MODE Выбирается вариант смещения блока разделов. Данные параметры доступны только для шаблона store_v3.
ID раздела для вывода подразделов SECTIONS_SECTION_ID Указывается идентификатор раздела, подразделы которого должны быть отображены. Если поле пустое и не заполнено поле Символьный код раздела для вывода подразделов, то будут выведены все разделы инфоблока.
Символьный код раздела для вывода подразделов SECTIONS_SECTION_CODE Указывается символьный код раздела, подразделы которого должны быть отображены. Если поле пустое и не заполнено поле ID раздела для вывода подразделов, то будут выведены все разделы инфоблока.
Максимальная отображаемая глубина разделов SECTIONS_TOP_DEPTH Указывается величина вложенности разделов, которые должны быть показаны.
Отображать разделы SHOW_SECTIONS [Y|N] При отмеченной опции будет показан блок с разделами.
Шаблоны ссылок
URL, ведущий на страницу с содержимым раздела SECTION_URL Указывается путь к странице с детальным содержимым раздела.
URL, ведущий на страницу с содержимым элемента раздела DETAIL_URL Указывается путь к странице с детальным описанием элемента раздела.
Название переменной, в которой передается код группы SECTION_ID_VARIABLE Задается имя переменной, в которой будет передаваться идентификатор раздела.
Управление адресами страниц
Включить поддержку ЧПУ SEF_MODE [Y|N] При отмеченной опции включается поддержка ЧПУ и становятся доступными поля настройки ЧПУ
Правило для обработки SEF_RULE Указывается правило обработки вызова страницы. Для создания правила следует использовать шаблоны, доступные по кнопке [...].
ID раздела SECTION_ID Указывается ID раздела инфоблока. Можно не задавать, если указан Код раздела или Путь из символьных кодов раздела. При отключенном режиме ЧПУ данные параметры настраиваются в секции Основные параметры.
Код раздела SECTION_CODE Указывается символьный код раздела инфоблока. Можно не задавать, если указан ID раздела инфоблока или Путь из символьных кодов раздела
Путь из символьных кодов раздела SECTION_CODE_PATH Задается путь из символьных кодов раздела инфоблока. Можно не задавать, если указан Код раздела или ID раздела инфоблока.
.

Управление режимом AJAX
Включить режим AJAX AJAX_MODE [Y|N] При установленной опции для компонента будет включен режим AJAX.
Включить прокрутку к началу компонента AJAX_OPTION_JUMP [Y|N] Если пользователь совершит AJAX-переход, то при установленой опции по окончании загрузки произойдет прокрутка к началу компонента.
Включить подгрузку стилей AJAX_OPTION_STYLE [Y|N] Если параметр принимает значение "Y", то при совершении AJAX-переходов будет происходить подгрузка и обработка списка стилей, вызванных компонентом.
Включить эмуляцию навигации браузера AJAX_OPTION_HISTORY [Y|N] Когда пользователь выполняет AJAX-переходы, то при включенной опции можно использовать кнопки браузера Назад и Вперед.
Настройки кеширования
Тип кеширования CACHE_TYPE Тип кеширования:
  • A - Авто + Управляемое: автоматически обновляет кеш компонентов в течение заданного времени или при изменении данных;
  • Y - Кешировать: для кеширования необходимо определить время кеширования;
  • N - Не кешировать: кеширования нет в любом случае.

Время кеширования (сек.) CACHE_TIME Время кеширования, указанное в секундах.
Учитывать права доступа CACHE_GROUPS [Y|N] При отмеченной опции будут учитываться права доступа при кешировании.
Дополнительные настройки
Устанавливать заголовок страницы SET_TITLE [Y|N] При отмеченной опции в качестве заголовка страницы будет установлен заголовок раздела.
Устанавливать заголовок окна браузера SET_BROWSER_TITLE [Y|N] При отмеченной опции будет установлен заголовок окна браузера по заданному SEO-шаблону META TITLE (см. закладку "SEO" в инфоблоке) или из свойства (станет доступным дополнительное поле
Установить заголовок окна браузера из свойства BROWSER_TITLE Среди всех свойств, определенных для данного инфоблока, выбирается то, в котором содержится заголовок окна браузера. Параметр доступен при отмеченной опции Устанавливать заголовок окна браузера.
).

Устанавливать ключевые слова страницы SET_META_KEYWORDS [Y|N] При отмеченной опции будут установлены ключевые слова страницы по заданному SEO-шаблону META KEYWORDS (см. закладку "SEO" в инфоблоке) или из свойства (станет доступным дополнительное поле
Установить ключевые слова страницы из свойства META_KEYWORDS Среди всех свойств, определенных для данного инфоблока, выбирается то, в котором содержатся ключевые слова. Параметр доступен при отмеченной опции Устанавливать ключевые слова страницы.
).

Устанавливать описание страницы SET_META_DESCRIPTION [Y|N] При отмеченной опции будет установлено описание страницы по заданному SEO-шаблону META DESCRIPTION (см. закладку "SEO" в инфоблоке) или из свойства (станет доступным дополнительное поле
Установить описание страницы из свойства META_DESCRIPTION Среди всех свойств, определенных для данного инфоблока, выбирается то, в котором содержится описание. Параметр доступен при отмеченной опции Устанавливать описание страницы.
).

Устанавливать в заголовках ответа время модификации страницы SET_LAST_MODIFIED [Y|N] При отмеченной опции http-ответ сервера будет содержать время последнего изменения страницы (заголовок Last-Modified).
Использовать основной раздел для показа элемента USE_MAIN_ELEMENT_SECTION [Y|N] Если опция отмечена, то при переходе на детальную страницу элемента в адресную строку браузера будет подставляться тот путь, который формируется при просмотре элемента через основной раздел, даже если элемент открыт через другой родительский его раздел.

Если опция не отмечена, про ссылка на детальную страницу элемента формируется с учетом того раздела, через который элемент открыт на просмотр.

Рассмотрим пример, когда опция в настройках отмечена. Допустим, что элемент с символьным кодом marketing привязан к двум разделам с кодами bisness и science соответственно, причем раздел с кодом bisness является основным. В результате, если пользователь пришел в раздел science и кликнул на элемент marketing, то в строке браузера вместо http://mysite.ru/catalog/science/marketing/ будет отображено http://mysite.ru/catalog/bisness/marketing/.

Включать раздел в цепочку навигации ADD_SECTIONS_CHAIN [Y|N] При отмеченной опции название или заголовок (если задан в настройках SEO) раздела будет включен в строку навигации.
Кешировать при установленном фильтре CACHE_FILTER [Y|N] При отмеченной опции каждый результат, полученный из фильтра, будет кешироваться.
Настройки действий
Название переменной, в которой передается действие ACTION_VARIABLE Указывается имя переменной, в которой передается действие: ADD_TO_COMPARE_LIST, ADD2BASKET и т.д. Значение поля по умолчанию ACTION. Значение параметра должно быть уникальным среди всех используемых компонентов на одной странице.
Название переменной, в которой передается код товара для покупки PRODUCT_ID_VARIABLE Задается имя переменной, в которой будет передаваться идентификатор товара для покупки.
Цены
Тип цены PRICE_CODE Указывается тип цены для выводимых элементов. Если не задан ни один из типов, то цена товара и кнопки Купить и В корзину показаны не будут.
Использовать вывод цен с диапазонами USE_PRICE_COUNT [Y/N] При отмеченной опции будут отображаться цены всех типов на товары.
Выводить цены для количества SHOW_PRICE_COUNT Параметр определяет количество единиц товара, для которых выводить стоимость.
Включать НДС в цену PRICE_VAT_INCLUDE [Y|N] При отмеченной опции цены будут показаны с учетом НДС.
Показывать цены в одной валюте CONVERT_CURRENCY При установке флажка цены будут выводиться в одной валюте, даже если в каталоге они будут заданы в разных валютах, станет доступным дополнительное поле
Валюта, в которую будут сконвертированы цены CURRENCY_ID Выбор валюты в которой будут отображаться цены.
. При выборе этой опции кеш компонента будет автоматически сбрасываться при изменении курсов валют тех товаров, что показываются компонентом. К примеру, если выбрана конвертация в рубли, а цены в инфоблоке сохранены в евро, то кеш сбросится при изменении курса евро или рубля. Изменения остальных валют на кеш не окажут влияния.

Добавление в корзину
URL, ведущий на страницу с корзиной покупателя BASKET_URL Указывается путь к странице с корзиной покупателя.
Разрешить указание количества товара USE_PRODUCT_QUANTITY [Y|N] При отмеченной опции будет разрешен вывод количества товара, станет доступным дополнительное поле
Название переменной, в которой передается количество товара PRODUCT_QUANTITY_VARIABLE Задается имя переменной, в которой будет передаваться количество товара.
.

Добавлять в корзину свойства товаров и предложений ADD_PROPERTIES_TO_BASKET [Y|N] При отмеченной опции становятся доступными настройки выбора свойств товаров и предложений
Название переменной, в которой передаются характеристики товара PRODUCT_PROPS_VARIABLE Задается имя переменной, в которой будет передаваться характеристики товара.
Разрешить добавлять в корзину товары, у которых заполнены не все характеристики PARTIAL_PRODUCT_PROPERTIES [Y|N] При отмеченной опции в корзину будут добавляться и те товары, у которых заполнены не все характеристики. Если же опция не отмечена, то товар будет добавлен в корзину только при условии, что все характеристики, добавляемые в корзину, заполнены. На торговые предложения этот параметр не влияет.
Характеристики товара PRODUCT_PROPERTIES Указываются характеристики товара.
Свойства предложений, добавляемые в корзину OFFERS_CART_PROPERTIES Из списка выбираются свойства, которые можно добавить в корзину. Для выбора нескольких свойств нужно использоать клавишу Ctrl. Данный параметр появляется при настройке компонента на инфоблок с поддержкой SKU.
для передачи их в корзину и заказ.

Показывать кнопку добавления в корзину или покупки ADD_TO_BASKET_ACTION Выберите какая кнопка должна отображаться: кнопка покупки (BUY) или кнопка добавления в корзину (ADD).
Сравнение товаров
Разрешить сравнение товаровUSE_COMPARE_LIST[Y|N] При отмеченной опции становятся доступными поля для настройки сравнения элементов
Путь к странице сравненияCOMPARE_PATHПуть к странице с компонентом сравнения товаров.
Для добавления к сравнению использовать текущую страницуDISPLAY_COMPARE[Y|N] При отмеченной опции для сравнения будет использована текущая страница.
Текст кнопки "Сравнить"BTN_COMPAREУказывается текст, отображаемый на кнопке "Сравнить".
Уникальное имя для списка сравненияCOMPARE_NAMEЗадается имя переменной, в которой передается список сравниваемых элементов. По умолчанию CATALOG_COMPARE_LIST.
и будет возможно сравнивать элементы каталога по кнопке Сравнить.
Настройки аналитики
Отправлять данные электронной торговли в Google и Яндекс USE_ENHANCED_ECOMMERCE [Y|N] Включение опции. После включения станут доступны ещё два поля
Имя контейнера данных DATA_LAYER_NAME Указываются свойства инфоблока, которые будут отображены в списке просмотренных товаров. При выборе пункта (не выбрано)-> и без указания кодов свойств в строках ниже, свойства выведены не будут.
Свойство брендов BRAND_PROPERTY Указывается свойство инфоблока, откуда система должна брать название бренда товара (производитель, марка, модель и т.п.).
. Требуется дополнительная настройка в Google Analytics Enhanced Ecommerce и/или Яндекс.Метрике.

Примечание: Настройка Яндекс метрикой не сложна, и данные в ней отображаются довольно быстро (полчаса-час). У Google используется Google Tag Manager с плагином электронной коммерции, его нужно настроить и добавить на страницу в шаблоне. После настройки на "той" стороне, нужно настроить компоненты для работы с электронной коммерцией и включить эту поле настройки.


Настройки постраничной навигации
Шаблон постраничной навигации PAGER_TEMPLATE Указывается название шаблона постраничной навигации. Если поле пусто, то выбирается шаблон по умолчанию (.default).
Выводить над списком DISPLAY_TOP_PAGER [Y|N] При отмеченной опции постраничная навигация будет выведена вверху страницы.
Выводить под списком DISPLAY_BOTTOM_PAGER [Y|N] При отмеченной опции постраничная навигация будет выведена внизу страницы.
Название категорий PAGER_TITLE Задается название категорий, по которым происходит перемещение по элементам.
Выводить всегда PAGER_SHOW_ALWAYS [Y|N] При отмеченной опции постраничная навигация будет выводиться, даже если все элементы помещаются на одной странице.
Использовать обратную навигацию PAGER_DESC_NUMBERING [Y|N] При отмеченной опции будет использоваться обратная навигация. Для обратной навигации в системе происходит обратный отсчет страниц (последняя страница считается первой). Таким образом, постоянно меняется лишь последняя страница при добавлении нового элемента. Это верно, если новые элементы попадают всегда вверх списка (отсортированы по дате начала активности по убыванию).
Время кеширования страниц для обратной навигации PAGER_DESC_NUMBERING_CACHE_TIME Задается время кеширования страниц в секундах для обратной навигации.
Показывать ссылку "Все" PAGER_SHOW_ALL [Y|N] При отмеченной опции в постраничную навигацию будет добавлена ссылка Все, с помощью которой можно отобразить все элементы раздела.
Включить обработку ссылок PAGER_BASE_LINK_ENABLE [Y|N] При отмеченной опции доступна обработка ссылок для постраничной навигации.
Показать кнопку ленивой загрузки Lazy Load LAZY_LOAD [Y|N] При отмеченной опции доступна кнопка "Показать еще"
Текст кнопки "Показать ещё" MESS_BTN_LAZY_LOAD Указывается текст, который должен быть показан на кнопке "Показать ещё"/ Параметр доступен, если отмечена опция Показать кнопку ленивой загрузки Lazy Load.
.

Подгружать товары при прокрутке до конца LOAD_ON_SCROLL [Y|N] При отмеченной опции товары будет подгружаться на просмотр при прокрутке страницы до конца.
Настройки 404 ошибки
Устанавливать статус 404 SET_STATUS_404 [Y|N] Опция служит для включения обработки ошибки 404 в компоненте.
Показ специальной страницы SHOW_404 [Y|N] При отмеченной опции будет показана специальная страница
Страница для показа (по умолчанию /404.php) FILE_404 Задается адрес страницы, которая будет отображаться при возникновении ошибки 404. Параметр настраивается, если отмечена опция Показ специальной страницы.
в случае возникновения ошибки 404, в противном случае - будет отображено специальное сообщение
Сообщение для показа (по умолчанию из компонента) MESSAGE_404 Задается сообщение, которое будет показано в случае возникновения ошибки 404. Если ничего не указывать, то будет использоваться стандартное сообщение из компонента. Параметр настраивается, если опция Показ специальной страницы не отмечена.
.

Специальные настройки
Включить режим совместимости COMPATIBLE_MODE [Y|N] При отмеченной опции будет включен режим совместимости, станет доступно дополнительное поле
Не подключать js-библиотеки в компоненте DISABLE_INIT_JS_IN_COMPONENT [Y|N] При отмеченной опции js-библиотека popup не будет подключаться в самом компоненте. Если шаблон компонента основан на шаблоне решения "Интернет-магазин" версии 12.5, то использование этой опции приведет к ограничению функционала.
. Опцию необходимо отмечать при наличии старого кастомизированного шаблона компонента версии ниже 16.6.2 модуля Информационные блоки.

Служебные параметры (не отображаются в настройках компонента)
Кастомная сортировка по произвольному числу параметров CUSTOM_ELEMENT_SORT Данный служебный параметр можно передать в вызове компонента. Тип параметра - массив. Структура массива соответствует ключу $arOrder метода CIBlockElement::GetList. Доступно с версии модуля iblock 20.0.400.
Параметр не используется в штатных шаблонах комплексного компонента catalog.

Примечание. Если указаны поля сортировки, отличные от ID, и значения этих полей для торговых предложений разные, то для выбора первого для показа предложения будет выбрано то предложение, которое отсортировано первым.
Если же все значения совпадают, то будет показано то торговое предложение, у которого сортировка участвующих в выборе SKU значений свойств минимальна.

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



Пример вызова

<?$APPLICATION->IncludeComponent(
	"bitrix:catalog.section",
	"",
	Array(
		"ACTION_VARIABLE" => "action",
		"ADD_PICT_PROP" => "MORE_PHOTO",
		"ADD_PROPERTIES_TO_BASKET" => "Y",
		"ADD_SECTIONS_CHAIN" => "N",
		"ADD_TO_BASKET_ACTION" => "ADD",
		"AJAX_MODE" => "N",
		"AJAX_OPTION_ADDITIONAL" => "",
		"AJAX_OPTION_HISTORY" => "N",
		"AJAX_OPTION_JUMP" => "N",
		"AJAX_OPTION_STYLE" => "Y",
		"BACKGROUND_IMAGE" => "UF_BACKGROUND_IMAGE",
		"BASKET_URL" => "/personal/basket.php",
		"BRAND_PROPERTY" => "BRAND_REF",
		"BROWSER_TITLE" => "-",
		"CACHE_FILTER" => "N",
		"CACHE_GROUPS" => "Y",
		"CACHE_TIME" => "36000000",
		"CACHE_TYPE" => "A",
		"COMPATIBLE_MODE" => "Y",
		"CONVERT_CURRENCY" => "Y",
		"CURRENCY_ID" => "RUB",
		"CUSTOM_FILTER" => "",
		"DATA_LAYER_NAME" => "dataLayer",
		"DETAIL_URL" => "",
		"DISABLE_INIT_JS_IN_COMPONENT" => "N",
		"DISCOUNT_PERCENT_POSITION" => "bottom-right",
		"DISPLAY_BOTTOM_PAGER" => "Y",
		"DISPLAY_TOP_PAGER" => "N",
		"ELEMENT_SORT_FIELD" => "sort",
		"ELEMENT_SORT_FIELD2" => "id",
		"ELEMENT_SORT_ORDER" => "asc",
		"ELEMENT_SORT_ORDER2" => "desc",
		"ENLARGE_PRODUCT" => "PROP",
		"ENLARGE_PROP" => "NEWPRODUCT",
		"FILTER_NAME" => "arrFilter",
		"HIDE_NOT_AVAILABLE" => "N",
		"HIDE_NOT_AVAILABLE_OFFERS" => "N",
		"IBLOCK_ID" => "2",
		"IBLOCK_TYPE" => "catalog",
		"INCLUDE_SUBSECTIONS" => "Y",
		"LABEL_PROP" => array("NEWPRODUCT"),
		"LABEL_PROP_MOBILE" => array(),
		"LABEL_PROP_POSITION" => "top-left",
		"LAZY_LOAD" => "Y",
		"LINE_ELEMENT_COUNT" => "3",
		"LOAD_ON_SCROLL" => "N",
		"MESSAGE_404" => "",
		"MESS_BTN_ADD_TO_BASKET" => "В корзину",
		"MESS_BTN_BUY" => "Купить",
		"MESS_BTN_DETAIL" => "Подробнее",
		"MESS_BTN_LAZY_LOAD" => "Показать ещё",
		"MESS_BTN_SUBSCRIBE" => "Подписаться",
		"MESS_NOT_AVAILABLE" => "Нет в наличии",
		"META_DESCRIPTION" => "-",
		"META_KEYWORDS" => "-",
		"OFFERS_CART_PROPERTIES" => array("ARTNUMBER","COLOR_REF","SIZES_SHOES","SIZES_CLOTHES"),
		"OFFERS_FIELD_CODE" => array("",""),
		"OFFERS_LIMIT" => "5",
		"OFFERS_PROPERTY_CODE" => array("COLOR_REF","SIZES_SHOES","SIZES_CLOTHES",""),
		"OFFERS_SORT_FIELD" => "sort",
		"OFFERS_SORT_FIELD2" => "id",
		"OFFERS_SORT_ORDER" => "asc",
		"OFFERS_SORT_ORDER2" => "desc",
		"OFFER_ADD_PICT_PROP" => "MORE_PHOTO",
		"OFFER_TREE_PROPS" => array("COLOR_REF","SIZES_SHOES","SIZES_CLOTHES"),
		"PAGER_BASE_LINK_ENABLE" => "N",
		"PAGER_DESC_NUMBERING" => "N",
		"PAGER_DESC_NUMBERING_CACHE_TIME" => "36000",
		"PAGER_SHOW_ALL" => "N",
		"PAGER_SHOW_ALWAYS" => "N",
		"PAGER_TEMPLATE" => ".default",
		"PAGER_TITLE" => "Товары",
		"PAGE_ELEMENT_COUNT" => "18",
		"PARTIAL_PRODUCT_PROPERTIES" => "N",
		"PRICE_CODE" => array("BASE"),
		"PRICE_VAT_INCLUDE" => "Y",
		"PRODUCT_BLOCKS_ORDER" => "price,props,sku,quantityLimit,quantity,buttons,compare",
		"PRODUCT_DISPLAY_MODE" => "Y",
		"PRODUCT_ID_VARIABLE" => "id",
		"PRODUCT_PROPERTIES" => array("NEWPRODUCT","MATERIAL"),
		"PRODUCT_PROPS_VARIABLE" => "prop",
		"PRODUCT_QUANTITY_VARIABLE" => "",
		"PRODUCT_ROW_VARIANTS" => "[{'VARIANT':'2','BIG_DATA':false},{'VARIANT':'2','BIG_DATA':false},{'VARIANT':'2','BIG_DATA':true}]",
		"PRODUCT_SUBSCRIPTION" => "Y",
		"PROPERTY_CODE" => array("NEWPRODUCT",""),
		"PROPERTY_CODE_MOBILE" => array(),
		"RCM_PROD_ID" => $_REQUEST["PRODUCT_ID"],
		"RCM_TYPE" => "personal",
		"SECTION_CODE" => "pants",
		"SECTION_ID" => "",
		"SECTION_ID_VARIABLE" => "SECTION_ID",
		"SECTION_URL" => "",
		"SECTION_USER_FIELDS" => array("",""),
		"SEF_MODE" => "N",
		"SET_BROWSER_TITLE" => "Y",
		"SET_LAST_MODIFIED" => "N",
		"SET_META_DESCRIPTION" => "Y",
		"SET_META_KEYWORDS" => "Y",
		"SET_STATUS_404" => "N",
		"SET_TITLE" => "Y",
		"SHOW_404" => "N",
		"SHOW_ALL_WO_SECTION" => "N",
		"SHOW_CLOSE_POPUP" => "N",
		"SHOW_DISCOUNT_PERCENT" => "Y",
		"SHOW_FROM_SECTION" => "N",
		"SHOW_MAX_QUANTITY" => "N",
		"SHOW_OLD_PRICE" => "N",
		"SHOW_PRICE_COUNT" => "1",
		"SHOW_SLIDER" => "Y",
		"SLIDER_INTERVAL" => "3000",
		"SLIDER_PROGRESS" => "N",
		"TEMPLATE_THEME" => "blue",
		"USE_ENHANCED_ECOMMERCE" => "Y",
		"USE_MAIN_ELEMENT_SECTION" => "N",
		"USE_PRICE_COUNT" => "N",
		"USE_PRODUCT_QUANTITY" => "N"
	)
);?>



Пользовательские комментарии

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

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
19
Сергей Тряпицын
Если необходимо вывести элементы без привязки к SECTIONs, достаточно указать скрытый параметр - "BY_LINK" со значением Y.

"BY_LINK"=> "Y"
1
Роберт Басыров
Задача: Как со страницы просмотра товара добавить в корзину данный товар сразу в n-ном количестве?
Решение:
Этот механизм можно реализовать немного переделав стандартный компонент.

К примеру возьмем компонент catalog.section

1. Копируем компонент в свою папку (копруем папку /bitrix/components/bitrix/catalog.element в папку например: /bitrix/components/demo/catalog.element) demo можно назвать во вашему желанию.

2. открываем файл: /bitrix/components/demo/catalog.element/component.php - немного изменим добавление товара в корзину. Кусок кода компонета с изменениями:
Код
if (array_key_exists($arParams["ACTION_VARIABLE"], $_REQUEST) && array_key_exists($arParams["PRODUCT_ID_VARIABLE"], $_REQUEST))
{
   $action = strtoupper($_REQUEST[$arParams["ACTION_VARIABLE"]]);
   $productID = intval($_REQUEST[$arParams["PRODUCT_ID_VARIABLE"]]);
   $productQuantity = intval($_REQUEST["num"]);
   $arrFilter = [
    'SECTION_ID' => $arResult["VARIABLES"]["SECTION_ID"],
     ]; 
  if ($productQuantity <1 ) $productQuantity = 1;
   if(($action == "ADD2BASKET" || $action == "BUY") && $productID > 0)
   {
      if(CModule::IncludeModule("iblock") && CModule::IncludeModule("sale") && CModule::IncludeModule("catalog"))
      {
         if(Add2BasketByProductID($productID, $productQuantity))
         {
            if($action == "BUY")
               LocalRedirect($arParams["BASKET_URL"]);
            else
               LocalRedirect($APPLICATION->GetCurPageParam("", array($arParams["PRODUCT_ID_VARIABLE"], $arParams["ACTION_VARIABLE"])));
         }
         else
         {
            if($ex = $GLOBALS["APPLICATION"]->GetException())
               $strError = $ex->GetString();
            else
               $strError = GetMessage("CATALOG_ERROR2BASKET").".";
         }
      }
   }
} 


Изменения от стандартного следующие:
  • Добавили $productQuantity = intval($_REQUEST["num"]); - в переменной нам будет передаваться количество добавляемого товара и условия проверки значения этой переменной
  • В функции Add2BasketByProductID($productID, $productQuantity) - добавили аргумент, определяющий количество добавляемого в корзину товара
  • Добавили подключение фильта $arrFilter вручную, так как в случае использования параметра "BY_LINK"=> "Y", фильтр перестанет работать.

3. Теперь изменим шаблон. Примерный кусок кода:
Код
<fo rm action="<?echo $arElement["ADD_URL"]?>">
   <input type="hidden" name="action" value="ADD2BASKET" />
   <input type="hidden" name="id" value="<?=$arElement["ID"]?>" />
   <input type="hidden" name="SECTION_ID" value="<?=$arResult["ID"]?>" />
   <input type="hidden" name="clear_cache" value="Y" />
   <input type="submit" value="Заказать" style="display:none;" />
   <input type="text" name="num" value="1" />
   <input type="submit" value="Добавить в корзину"  />
</form> 


Теперь в дополнительном поле можно задать количество добавляемого товара.

P.S. Пример немного упрощенный, но рабочий (по хорошему можно добавить параметр компонента, который будет определять имя переменной в которой передается кол-во)
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх