Задача
Поставщик оставляет снятые с продажи товары в XML-фиде и ставит им status = discontinued. Такие offer нужно убрать целиком, а активные товары оставить.
Короткий ответ
Откройте настройки узла offer и добавьте условие выгрузки для элемента: путь status не равен discontinued.
Как сделать в Eofferix
Откройте настройки узла
offerв XML-редакторе.
Анимация показывает открытие настроек повторяющегося элемента offer.Добавьте условие выгрузки для элемента целиком:
statusне равенdiscontinued.
Условие проверяет дочернее значение offer, но удаляет весь товарный элемент.Сохраните настройки и проверьте предпросмотр выгрузки на нескольких товарах поставщика.
Было / стало
Было
исходные данные<catalog>
<offers>
<offer id="1001"><sku>SKU-1001</sku><name>Лампа Ладога</name><status>active</status><price>24.90</price><stock>12</stock></offer>
<offer id="1002"><sku>SKU-1002</sku><name>Кресло Волга</name><status>discontinued</status><price>139.00</price><stock>0</stock></offer>
<offer id="1003"><sku>SKU-1003</sku><name>Полка Нева</name><status>active</status><price>16.40</price><stock>27</stock></offer>
</offers>
</catalog>Стало
результат<catalog>
<offers>
<offer id="1001"><sku>SKU-1001</sku><name>Лампа Ладога</name><status>active</status><price>24.90</price><stock>12</stock></offer>
<offer id="1003"><sku>SKU-1003</sku><name>Полка Нева</name><status>active</status><price>16.40</price><stock>27</stock></offer>
</offers>
</catalog>Что важно помнить
- Условие ставится на
offer, а не только на полеstatus, чтобы удалить весь товарный блок. - Если поставщик использует статусы
obsoleteилиarchived, добавьте отдельные условия или нормализуйте статус заранее. - Такой фильтр особенно полезен для больших XML-фидов, где снятые позиции остаются ради истории.