Настраиваемая далее выгрузка, актуальна для редакций битрикс "Малый бизнес" и "Бизнес".
Начнем наши настройки из админ раздела и следуем по следующему пути Админка > Магазин > Настройки >Экспорт данных
На открывшейся странице видим список предустановленных профилей экспорта.
Над списком нажимаем кнопку "Добавить профиль" и выбираем "Yandex". Откроется окно с настройками выгрузки.
Далее нам нужно произвести следующие настройки:
- Выберите тип инфоблока каталога, его можно узнать на вкладке админки Контент>Инфоблоки>Типы инфоблоков.
- Выберите инфоблок каталога товаров
- Выберите разделы каталога, которые нужно выгрузить
- По этой кнопке доступна более тонкая настройка
- Настройте домен и имя профиля. Также вы можете указать имя файла выгрузки.
В нем можно вывести наш профиль в меню слева, для быстрого доступа. И настроить автозапуск через агенты или cron.
На этом стандартная настройка закончена.
Модификация
Немного модифицируем выгрузку добавив в выгружаемый файл тег <cpa>, который согласно документации яндекс маркета устанавливает доступен ли товар к покупке через маркет.
Значения элемента cpa
в элементе offer
:
- 0 — данный товар не участвует в программе «Заказ на Маркете»;
- 1 — данный товар участвует в программе «Заказ на Маркете».
Скопируем стандартный скрипт выгрузки к себе. Он находится в: /bitrix/modules/catalog/load/
Копируем файл yandex_run.php и внесем в него следующие изменения:
В массив $arYandexFields (66 строка), добавим значение 'cpa'
$arYandexFields = array(
'typePrefix', 'vendor', 'vendorCode', 'model',
'author', 'name', 'publisher', 'series', 'year',
'ISBN', 'volume', 'part', 'language', 'binding',
'page_extent', 'table_of_contents', 'performed_by', 'performance_type',
'storage', 'format', 'recording_length', 'artist', 'title', 'year', 'media',
'starring', 'director', 'originalName', 'country', 'aliases',
'description', 'sales_notes', 'promo', 'provider', 'tarifplan',
'xCategory', 'additional', 'worldRegion', 'region', 'days', 'dataTour',
'hotel_stars', 'room', 'meal', 'included', 'transport', 'price_min', 'price_max',
'options', 'manufacturer_warranty', 'country_of_origin', 'downloadable', 'adult', 'param',
'place', 'hall', 'hall_part', 'is_premiere', 'is_kids', 'date','cpa'
);
Затем в switch после строки(1628) вставим новый case с нашим тегом.
case 'cpa':
/**wizzle*/
$itemQuantity = $offer["CATALOG_QUANTITY"];
$itemsContent .= "<cpa>";
if($itemQuantity>3){
$itemsContent .= "1";
}else{
$itemsContent .= "0";
}
$itemsContent .= "</cpa>"."\n";
break;
Затем в следующий switch после строки 1800 вставляем такой же case только в строке $itemQuantity = $offer["CATALOG_QUANTITY"];
Теперь возвращаем наш файл обратно на сайт в следующее расположение: /bitrix/php_interface/include/catalog_export/ и перезаписываем уже существующий файл.
Все готово можете нажать свойствах нашего профиля "экспортировать" и наблюдать добавленный тег в файле выгрузки.
Измененный файл yandex_run.php прикладываю (версия битрикса на момент внесения изменений 17.0.12) - скачать