Битрикс доработка модуля яндекс маркет

В маркетплейса Битркиса есть модуль https://marketplace.1c-bitrix.ru/solutions/yandex.market/ который подготавливает прайс-лист для Маркета и Беру.
Задача: наличие товара задается в дополнительном св-ве, а не используется стандартный функционал Битрикса, нужно испольуя это свойство корректно заполнить прайс

Для этого в настройках модуля, в сопоставлении полей полю available сопоставляем наше свойство. При отсутсвии товара, в свойстве передается значение Под заказ
В init.php добавляем следующий обработчик:

use Bitrix\Main;
use Yandex\Market;

$eventManager = Main\EventManager::getInstance();

$eventManager->addEventHandler('yandex.market', 'onExportOfferExtendData', function(Main\Event $event) {

    /** @var $tagValueList Market\Result\XmlValue[] */
    $tagValueList = $event->getParameter('TAG_VALUE_LIST');

    foreach ($tagValueList as $elementId => $tagValue)
    {
        $available = $tagValue->getTagAttribute('offer', 'available');
        if($available == 'Под заказ'){
            $tagValue->setTagAttribute('offer', 'available', 0);
        }
    }

});

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *