Создание товара с торговыми предложениями в Битрикс начинается с выбора правильного типа инфоблока. Для этого необходимо использовать тип «catalog» и включить поддержку SKU. Основной товар и его предложения (например, размеры или цвета) хранятся в разных инфоблоках, связанных между собой через свойство типа «Привязка к элементам».
Торговые предложения в Битрикс реализуются через дочерний инфоблок, в котором каждое предложение – отдельный элемент. Чтобы корректно настроить связь, в параметрах инфоблока предложений указывается ID родительского инфоблока и связывающее свойство. Эта структура необходима для корректной работы с модулем «Каталог» и обеспечения полноценной фильтрации и сортировки в публичной части сайта.
Важно: для отображения предложений на детальной странице товара необходимо использовать компонент catalog.element с включённой опцией «Показывать торговые предложения». Без этой настройки предложения не будут отображаться, даже если они добавлены правильно.
Каждое торговое предложение должно иметь уникальный артикул, цену и остатки. Если используется модуль складского учёта, то остатки указываются отдельно для каждого предложения, а не для основного товара. Это важно для правильной работы механизма резервирования и расчёта доступных остатков в заказе.
Перед массовым импортом товаров с предложениями рекомендуется протестировать структуру на нескольких позициях. Используйте инструмент Импорт из CSV/XML или API CIBlockElement::Add и CCatalogSKU::LinkSKUID для программного добавления и связывания предложений с родительскими товарами.
Настройка инфоблока для работы с торговыми предложениями
Для корректной работы с торговыми предложениями в Битрикс необходимо создать два инфоблока: основной инфоблок товаров и связанный с ним инфоблок торговых предложений. Настройка производится через административную панель в разделе «Контент» → «Инфоблоки».
- Создайте инфоблок товаров:
- Тип инфоблока должен быть заранее создан (например, «catalog»).
- Укажите символьный код, например
products
. - Включите поддержку SKU, если создаёте инфоблок из шаблона.
- Создайте инфоблок торговых предложений:
- Тип инфоблока должен совпадать с типом инфоблока товаров.
- Символьный код, например
offers
. - В свойствах инфоблока создайте привязку к основному инфоблоку:
- Тип свойства: «Привязка к элементам».
- Обязательное свойство с кодом
CML2_LINK
. - Выбор инфоблока: основной инфоблок товаров.
- Перейдите в раздел «Торговый каталог»:
- Откройте настройки основного инфоблока.
- Установите флаг «Использовать торговые предложения».
- Выберите инфоблок предложений в выпадающем списке.
- Проверьте автоматическую установку модуля «Торговый каталог». Без него не будет работать связь SKU.
После настройки создайте хотя бы одно свойство для предложений (например, «Размер» или «Цвет») и убедитесь, что они отображаются при создании элемента в инфоблоке предложений. Без этого торговые предложения не будут полноценно функционировать в публичной части сайта и в админке.
Создание основного товара и связь с торговыми предложениями
Основной товар в Битрикс создаётся в инфоблоке, который настроен как «каталог с торговыми предложениями». При создании выбирается тип инфоблока – «товары», и обязательно указывается привязка к инфоблоку с торговыми предложениями через свойство-связь типа «Привязка к элементам».
Создайте элемент основного каталога: заполните название, символьный код, укажите базовую цену (если она не задаётся на уровне предложений), загрузите изображение. После сохранения товара перейдите в инфоблок предложений и создайте нужное количество вариантов (например, разные размеры или цвета).
Каждое торговое предложение должно содержать обязательную ссылку на основной товар. Это обеспечивается заполнением свойства-связи, которое автоматически подставляет ID главного элемента. Также необходимо задать уникальные параметры: цену, артикул, количество на складе, а при необходимости – отдельные изображения.
Если используется SKU-модуль, проверьте корректность связки между инфоблоками через «Торговый каталог» → «Типы цен» и «Инфоблоки торговых каталогов». Связь должна быть настроена один-к-одному: один основной товар соответствует множеству предложений. Убедитесь, что для свойства-связи включен параметр «Множественное» только в инфоблоке торговых предложений.
Для массового создания рекомендуется использовать импорт CSV или XML через модуль обмена. При этом в файле необходимо явно указать внешний код родительского товара и связать его с предложениями через XML_ID и родительское свойство.
Добавление размеров, цветов и других свойств предложений
Для корректной работы торговых предложений в Битрикс необходимо создать свойства, которые будут использоваться для различения вариантов товара. Перейдите в административной панели в раздел «Инфоблоки» → «Типы инфоблоков» и выберите инфоблок с предложениями.
Откройте вкладку «Свойства» и создайте новое свойство. Для размера укажите код, например, SIZE. Тип свойства – «Список», значение задаётся вручную. Установите флаг «Использовать в качестве свойства привязки к торговым предложениям».
Повторите действия для цвета: код – COLOR, тип – «Список». Включите сортировку, если требуется отображение по определённому порядку (например, XS → S → M → L → XL).
Для добавления других характеристик (материал, объём, вес) используйте типы «Строка» или «Список» в зависимости от структуры значений. Все свойства должны быть множественными, если предполагается выбор нескольких значений.
После создания свойств убедитесь, что они отображаются в карточке товара. Перейдите в «Каталог» → «Торговые предложения» и создайте или отредактируйте предложение, указав соответствующие значения свойств. Битрикс связывает предложения с основным товаром через уникальные комбинации этих параметров.
Для отображения фильтрации по свойствам на сайте включите соответствующие параметры в компоненте catalog.smart.filter и убедитесь, что свойства добавлены в инфоблок и имеют тип «Фильтруемое в умном фильтре».
Избегайте дублирования значений и используйте единый формат написания (например, не смешивайте “красный” и “Красный”). Это обеспечит корректную работу фильтров и отображения предложений.
Импорт товаров с предложениями через CSV или Excel
Для импорта товаров с торговыми предложениями в Битрикс необходимо подготовить два файла: один для основного каталога, второй – для предложений. В файле с товарами обязательно указываются поля XML_ID, NAME, IBLOCK_ID, а также свойства, обязательные для заполнения. Файл с предложениями должен содержать ссылку на родительский товар через поле CML2_LINK (оно должно соответствовать XML_ID товара), а также параметры предложений: артикул, цена, количество, свойства (например, размер или цвет).
Импорт осуществляется через модуль «Импорт CSV» в административной панели: Контент → Каталоги → Импорт CSV. В настройках указывается тип информационного блока – сначала выбирается основной каталог, затем отдельным этапом – инфоблок предложений. При импорте предложений важно правильно настроить соответствие поля CML2_LINK и включить опцию привязки к товару.
В файле предложений необходимо использовать уникальные значения в поле XML_ID для каждого предложения. Цены указываются в отдельном поле, соответствующем типу цены, заданному в настройках торгового каталога. Остатки в поле QUANTITY. Для обновления данных при повторном импорте важно использовать режим «обновление по XML_ID».
Если используется Excel, файл должен быть предварительно сохранён в формате CSV с кодировкой UTF-8 без BOM. Разделителем значений желательно выбрать точку с запятой. Все значения должны быть строго соответствующими типам данных Битрикс. Ошибки в заголовках столбцов или несовпадения XML_ID приводят к игнорированию строк или созданию дубликатов.
После завершения импорта необходимо перейти в настройки каталога и убедиться, что к основному инфоблоку привязан инфоблок торговых предложений. Без этой связи предложения не будут отображаться на сайте и в карточках товаров.
Настройка карточки товара для отображения предложений на сайте
Для отображения торговых предложений в карточке товара необходимо, чтобы инфоблок основного товара был связан с инфоблоком предложений через типовой механизм «Торговый каталог». Это настраивается в панели управления в разделе «Контент» → «Каталоги». При создании или редактировании каталога нужно активировать опцию «Это торговый каталог» и указать связанный инфоблок предложений.
После настройки связки важно убедиться, что у инфоблока предложений корректно заданы свойства, отражающие параметры выбора: размер, цвет и прочие. Эти свойства должны быть добавлены в тип инфоблока и заполнены для всех предложений. Только при этом условии система сможет корректно отобразить варианты в карточке.
В компоненте каталога, который используется для отображения товара на сайте (обычно это bitrix:catalog.element), требуется включить поддержку торговых предложений. Для этого в параметрах компонента установите значение «Показывать торговые предложения» в «Да». Также нужно указать, какие свойства предложений использовать для отображения в карточке – параметр «S_PROP_CODE».
Для изменения отображения вариантов предложений в шаблоне компонента нужно доработать файл template.php. Обычно используется переключение по выбранному свойству без перезагрузки страницы через JavaScript. Для этого Bitrix предоставляет объект offers в JS, который содержит все возможные комбинации предложений и их параметры. С его помощью можно обновлять цену, остаток и изображение при выборе другого варианта.
Важно убедиться, что выбранный шаблон поддерживает динамическую подгрузку данных и корректно обрабатывает события выбора предложения. Если используется стандартный шаблон, проверьте наличие файла script.js, отвечающего за переключение предложений, и его корректную инициализацию.
Обновление цен и остатков для торговых предложений
В Битрикс обновление цен и остатков для торговых предложений выполняется через методы API или административный интерфейс. Важно использовать метод CIBlockElement::SetPropertyValuesEx для изменения характеристик конкретного торгового предложения, а для цен – класс CPrice с методами Add, Update и Delete.
Для корректного обновления цен сначала определите ID торгового предложения, затем проверьте существование цены по нужному типу (тип цены задается через типы цен в настройках магазина). Если цена отсутствует, используйте CPrice::Add, иначе – CPrice::Update, передавая ID цены. Значение цены указывается в копейках с плавающей точкой (например, 1250.50).
Остатки управляются через модуль склада: для каждого торгового предложения обновляйте количество методом CCatalogProduct::Update, передавая ID товара и новое значение поля QUANTITY. Для синхронизации с несколькими складами применяется CCatalogStoreProduct::Update, указывая ID склада и количество.
Для массового обновления рекомендуется использовать агент или импорт CSV с уникальными идентификаторами предложений. Важно реализовать проверку целостности данных и вести лог ошибок. Для ускорения обработки больших объемов данных применяйте пакетные операции и минимизируйте количество запросов к базе.
Вопрос-ответ:
Как в Битрикс создать товар с несколькими торговыми предложениями?
Для создания товара с торговыми предложениями в Битрикс нужно сначала добавить сам товар в каталог, затем в разделе торговых предложений указать свойства, по которым будут создаваться варианты (например, цвет, размер). После этого формируются конкретные предложения с уникальными ценами и количеством для каждого варианта. Это позволяет удобно управлять ассортиментом и отображать варианты товара покупателю.
Какие свойства необходимо задать для торговых предложений, чтобы они корректно отображались на сайте?
Важные свойства для торговых предложений — это те, которые помогают покупателю выбрать нужный вариант, например: цвет, размер, материал. Эти свойства должны быть созданы как «характеристики торгового предложения» в настройках инфоблока. После этого при добавлении каждого варианта указываются конкретные значения этих свойств, что позволяет системе формировать правильные варианты выбора для пользователя.
Можно ли в Битрикс задать разную цену для каждого торгового предложения внутри одного товара?
Да, в Битрикс предусмотрена возможность указывать индивидуальную цену для каждого торгового предложения. При создании вариантов товара в карточке предложения указывается своя цена, которая будет отображаться на сайте в зависимости от выбранного варианта. Это полезно, если, например, разные цвета или размеры имеют разную стоимость.
Какие ошибки чаще всего возникают при создании товаров с торговыми предложениями в Битрикс, и как их избежать?
Одна из частых ошибок — неправильная настройка свойств торговых предложений, когда свойства не привязаны к типу «торговое предложение», из-за чего варианты не формируются. Также встречается ошибка в заполнении значений свойств, если они не совпадают с предустановленными. Для корректной работы важно внимательно проверить типы и значения свойств, а также правильно заполнить все поля карточки каждого предложения.