Выгрузка товаров в Яндекс Маркет в Битрикс (раздел Магазин → Настройки → Экспорт данных) – неочевидный, но важный процесс. Разберем, как правильно его настроить.
1. Создание своего файла выгрузки
-
Перейдите в папку
/bitrix/php_interface/include/catalog_export/. -
Скопируйте стандартные файлы
yandex_run.phpиyandex_setup.php. -
Переименуйте их (например,
myexport_run.phpиmyexport_setup.php). -
Убедитесь, что файлы содержат корректный код, включая строку:
<?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/catalog/load/yandex_run.php");?>
2. Выгрузка только товаров в наличии
В файле выгрузки найдите переменную $filter и добавьте условие:
$filter = Array(
"IBLOCK_ID" => $IBLOCK_ID,
"ACTIVE_DATE" => "Y",
"ACTIVE" => "Y",
">CATALOG_QUANTITY" => 0 // Только товары с количеством > 0
);3. Выгрузка товаров с торговыми предложениями (SKU)
Найдите переменную $arOfferFilter и добавьте аналогичное условие:
$arOfferFilter = array(
'IBLOCK_ID' => $intOfferIBlockID,
"ACTIVE_DATE" => "Y",
"ACTIVE" => "Y",
'PROPERTY_'.$arOffers['SKU_PROPERTY_ID'] => 0,
">CATALOG_QUANTITY" => 0 // Только SKU в наличии
);4. Фильтрация по свойствам (список, цены и др.)
-
Фильтр по свойству типа "Список"
$filter = Array( "IBLOCK_ID" => $IBLOCK_ID, "ACTIVE_DATE" => "Y", "ACTIVE" => "Y", "PROPERTY_395" => 720 // ID свойства и значение );
-
Выгрузка товаров с заполненной ценой
$filter = Array( "IBLOCK_ID" => $IBLOCK_ID, "ACTIVE_DATE" => "Y", "ACTIVE" => "Y", ">CATALOG_PRICE_3" => 0 // ID типа цены = 3 (оптовая) );
Вывод
Теперь вы знаете, как:
Создать свою выгрузку в Яндекс Маркет
Настроить фильтрацию по наличию, SKU и свойствам
Выгружать только товары с определенными ценами
Используйте эти настройки, чтобы автоматизировать выгрузку и улучшить синхронизацию с Яндекс Маркет.