Каталоги поставщиков

Как оставить в YML только товары с delivery=true

2026-06-29
Задача

В YML есть товары с delivery=true, delivery=false и без delivery. В текущий каталог нужны только позиции, для которых доставка разрешена.

Короткий ответ

Поставьте условие экспорта на offer: delivery должен соответствовать регулярному выражению ^(true|1|yes)$ (находит значения true, 1 или yes от начала до конца).

Как сделать в Eofferix

  1. В XML/YML-снапшоте выберите повторяющийся узел offer.

  2. Откройте настройки узла.

    Открытие настроек offer
    Анимация показывает открытие настроек повторяющегося товарного узла.
  3. Добавьте условие экспорта для delivery: delivery ^(true|1|yes)$.

    Условие экспорта
    Условие применяется к товару целиком.

Было / стало

Было

исходные данные
<yml_catalog date="2026-06-29 10:00">
  <shop>
    <offers>
      <offer id="YML-26001"><name>Лампа Ладога</name><price>1290.00</price><delivery>true</delivery></offer>
      <offer id="YML-26002"><name>Кресло Волга</name><price>8400.00</price><delivery>false</delivery></offer>
      <offer id="YML-26003"><name>Полка Нева</name><price>990.00</price></offer>
    </offers>
  </shop>
</yml_catalog>

Стало

результат
<yml_catalog date="2026-06-29 10:00">
  <shop>
    <offers>
      <offer id="YML-26001"><name>Лампа Ладога</name><price>1290.00</price><delivery>true</delivery></offer>
    </offers>
  </shop>
</yml_catalog>

Что важно помнить

  • Если поставщик всегда присылает только true и false, можно использовать условие равно true без регулярного выражения.
  • Условие ставьте на offer, чтобы исключался весь товар.

Обрабатывайте данные быстрее с Eofferix

Создайте бесплатный аккаунт, чтобы автоматизировать каталоги и прайс-листы под ваши правила.

Зарегистрироваться