Catálogos de proveedores

Cómo conservar en YML solo ofertas con url válido

2026-06-29
Tarea

Algunos valores url del YML ya son absolutos, otros llegan como /catalog/sku-6002, y a veces el campo está vacío o contiene solo el dominio base https://supplier.example. La importación debe conservar solo productos con enlace completo.

Respuesta corta

Configure transformaciones sobre el valor url: si el valor actual no contiene https://supplier.example, agregue ese dominio al inicio. Luego, si el resultado es exactamente https://supplier.example, reemplácelo por vacío. En las condiciones de exportación, conserve solo url cuyo valor actual después de las transformaciones no esté vacío.

Cómo hacerlo en Eofferix

  1. En el snapshot XML/YML, seleccione el valor url dentro del offer repetido.

  2. Abra la configuración del valor url.

    Apertura de url
    La configuración se aplica al valor del enlace, no a todo el nodo offer.
  3. Agregue una regla de transformación: valor actual No contiene subcadena https://supplier.example, acción Agregar al inicio, resultado https://supplier.example.

    Regla para agregar dominio a url
    La regla convierte rutas relativas como /catalog/sku-6002 en enlaces absolutos.
  4. Agregue la segunda regla: valor actual Igual a https://supplier.example, acción Reemplazar por, deje el resultado vacío.

    Regla para limpiar dominio base sin ruta
    Así los enlaces vacíos o solo con dominio base quedan vacíos.
  5. En las condiciones de exportación, configure: valor actual Después de transformaciones No vacío. Use el alcance de elemento completo para excluir todo el offer.

    Condición después de transformar para url
    Después de las dos reglas, solo quedan productos con enlace útil no vacío.

Antes / después

Antes

datos de origen
<yml_catalog date="2026-06-29 10:00">
  <shop>
    <offers>
      <offer id="YML-6001" available="true">
        <name>Lampara Alba</name>
        <url>https://supplier.example/catalog/sku-6001</url>
        <currencyId>EUR</currencyId>
        <price>1290.00</price>
      </offer>
      <offer id="YML-6002" available="true">
        <name>Sillon Costa</name>
        <url>/catalog/sku-6002</url>
        <currencyId>EUR</currencyId>
        <price>8400.00</price>
      </offer>
      <offer id="YML-6003" available="true">
        <name>Estante Norte</name>
        <url>
        </url>
        <currencyId>EUR</currencyId>
        <price>990.00</price>
      </offer>
      <offer id="YML-6004" available="true">
        <name>Estante Norte</name>
        <url>https://supplier.example</url>
        <currencyId>EUR</currencyId>
        <price>990.00</price>
      </offer>
    </offers>
  </shop>
</yml_catalog>

Después

resultado
<yml_catalog date="2026-06-29 10:00">
  <shop>
    <offers>
      <offer id="YML-6001" available="true">
        <name>Lampara Alba</name>
        <url>https://supplier.example/catalog/sku-6001</url>
        <currencyId>EUR</currencyId>
        <price>1290.00</price>
      </offer>
      <offer id="YML-6002" available="true">
        <name>Sillon Costa</name>
        <url>https://supplier.example/catalog/sku-6002</url>
        <currencyId>EUR</currencyId>
        <price>8400.00</price>
      </offer>
    </offers>
  </shop>
</yml_catalog>

Procesa datos más rápido con Eofferix

Crea una cuenta gratis para automatizar catálogos y listas de precios según tus reglas.

Registrarse