Saltar al contenido

Cómo crear canales personalizados ​

Los canales personalizados te permiten definir tu propia estructura y formato de feed, con control total sobre los nombres de los campos, la organización de los datos y el formato de salida. A diferencia de los canales integrados (como Facebook o Google), que tienen campos predefinidos, los canales personalizados los configuras tú por completo.

Lista de canales personalizados
Lista de canales personalizados

Cuándo usar canales personalizados ​

Los canales personalizados son útiles cuando:

  • Necesitas exportar a una plataforma que no admiten los canales integrados de Feedr
  • Un marketplace o un socio exige un formato específico que no puedes conseguir con un canal integrado
  • Quieres enviar datos de productos a sistemas internos, como un ERP, un PIM o una herramienta de inventario
  • Necesitas control total sobre los nombres de los campos, la estructura y el formato de salida
  • Quieres generar varios formatos (XML, CSV, JSON) a partir de una sola definición de canal

Crear un canal personalizado ​

  1. Ve a tu Shop en la barra lateral
  2. Haz clic en Canales personalizados
  3. Haz clic en Crear en la esquina superior derecha
  4. Escribe un título y selecciona uno o varios formatos de salida
Crear un canal personalizado
Crear un canal personalizado

TIP

Puedes seleccionar varios formatos (XML, CSV, JSON) para un mismo canal. Cada formato tiene sus propias opciones de configuración, así que puedes adaptar la salida a distintos destinatarios a partir de una sola definición de canal.

Formatos de datos compatibles ​

FormatoIdeal paraExtensión
XMLPlataformas de anuncios, marketplaces, datos estructurados.xml
CSVHojas de cálculo, importaciones sencillas, datos planos.csv
JSONAPI, integraciones modernas, datos anidados.json

Configurar XML ​

El formato XML te da control sobre la estructura del documento, los namespaces y los elementos que envuelven el contenido.

Configuración de XML
Configuración de XML

Opciones de XML ​

OpciónDescripción
Elementos de envolturaNombre del elemento raíz. Puede anidarse en varios niveles (p. ej., rss → channel).
Elemento de ítemEl elemento que envuelve cada producto. Por defecto es item.
AtributosPares clave-valor que se añaden a los elementos de envoltura (p. ej., version="2.0").
NamespacesDeclaraciones de namespaces XML: asocian un prefijo a una URI (p. ej., g → http://base.google.com/ns/1.0).
Hijos estáticosElementos hijo fijos con un nombre, un valor y envoltura CDATA opcional. Útiles para metadatos como <title>My Feed</title>.

Ejemplo de salida XML ​

xml
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>My Product Feed</title>
    <item>
      <name>Blue T-Shirt</name>
      <price>29.99</price>
      <description><![CDATA[A comfortable blue t-shirt]]></description>
    </item>
    <item>
      <name>Red Hoodie</name>
      <price>59.99</price>
      <description><![CDATA[A warm red hoodie]]></description>
    </item>
  </channel>
</rss>

Configurar JSON ​

El formato JSON te permite controlar la estructura del documento JSON y añadir campos de metadatos estáticos.

Configuración de JSON
Configuración de JSON

Opciones de JSON ​

OpciónDescripción
Item keyLa clave del array de productos. Por defecto es products.
Elementos de envolturaCapas de objetos anidados alrededor del array de ítems (p. ej., data → catalog).
Campos estáticosPares clave-valor fijos en cada nivel de envoltura (p. ej., "version": "1.0").

Ejemplo de salida JSON ​

json
{
  "version": "1.0",
  "data": {
    "catalog": {
      "products": [
        {
          "name": "Blue T-Shirt",
          "price": "29.99"
        },
        {
          "name": "Red Hoodie",
          "price": "59.99"
        }
      ]
    }
  }
}

Configurar CSV ​

El formato CSV ofrece un control detallado sobre los delimitadores, las comillas y la forma de representar los campos anidados o con varios valores.

Configuración de CSV
Configuración de CSV

Opciones de CSV ​

OpciónDescripciónPredeterminado
DelimitadorSeparador de campos (coma, punto y coma, tabulación, pipe),
Include headerSi se incluye una fila de encabezadoSí
Carácter de comillasTipo de comillas (dobles, simples o ninguna)"
Fin de líneaLF o CRLFLF
Valor de campo vacíoValor que se usa para los campos vacíos(vacío)
Separador de múltiples valoresSeparador para los campos con varios valores|
Nested field formatFormato de los campos anidados: key_value o value_onlykey_value
Separador clave-valorSeparador entre la clave y el valor en los campos anidados:
Separador de paresSeparador entre los pares clave-valor en los campos anidados;
Separador de gruposSeparador entre grupos anidados|

Ejemplo de salida CSV ​

csv
name,price,description
"Blue T-Shirt","29.99","A comfortable blue t-shirt"
"Red Hoodie","59.99","A warm red hoodie"

Gestionar los campos de salida ​

Los campos de salida definen qué campos aparecen en tu feed y en qué orden. Los gestionas desde la pestaña Campos de salida de tu canal personalizado.

Campos de salida
Campos de salida
  • Añadir: haz clic en Añadir para crear un nuevo campo. Escribe el título y configura las opciones.
  • Editar: haz clic en la fila de un campo para abrir la ventana de edición.
  • Eliminar: haz clic en el botón de eliminar de la fila de un campo. Se te pedirá que lo confirmes.
  • Reordenar: arrastra y suelta los campos con el tirador para cambiar su orden en la salida.
Ventana del campo de salida
Ventana del campo de salida

Opciones de campo ​

OpciónDescripciónSe aplica a
TítuloEl nombre del campo tal como aparece en la salidaTodos los formatos
Tipo de salidaIndicación del tipo de dato (texto, URL, imagen, fecha, booleano)Todos los formatos
NamespacePrefijo de namespace XML para este campoSolo XML
CDATAEnvuelve el valor en una sección CDATASolo XML
MultipleEl campo puede contener varios valoresTodos los formatos

Crear campos anidados ​

Los canales personalizados admiten una jerarquía de campos padre e hijo de hasta dos niveles. Los campos anidados te permiten agrupar datos relacionados bajo un elemento padre.

Para crear campos anidados:

  1. Añade un campo padre (p. ej., shipping)
  2. Añade campos hijo y establece su Parent en el campo que acabas de crear (p. ej., country, price)

INFO

Un campo padre funciona como contenedor, así que no tiene valor propio. Solo los campos hijo contienen datos de producto.

Cómo se muestran los campos anidados ​

La misma estructura de padre e hijo se muestra de forma distinta según el formato:

XML: elementos anidados dentro del elemento padre:

xml
<shipping>
  <country>US</country>
  <price>5.99</price>
</shipping>

JSON: objeto anidado dentro de la clave padre:

json
{
  "shipping": {
    "country": "US",
    "price": "5.99"
  }
}

CSV: aplanado con los separadores configurables:

csv
shipping
"country:US;price:5.99"

Crear un feed con un canal personalizado ​

Cuando tu canal personalizado tenga los campos de salida configurados, puedes crear un feed que lo use:

  1. Ve a Feeds → Nuevo feed
  2. Selecciona tu canal personalizado en la lista de canales
  3. Haz clic en Crear
  4. Copia la URL del feed para usarla en tu integración
  5. Configura el Mapeo de salida para mapear los datos de tus productos a los campos de salida que definiste
Crear un feed personalizado
Crear un feed personalizado

Acceder a los distintos formatos ​

Si tu canal personalizado tiene varios formatos activados, puedes acceder a cada uno cambiando la extensión del archivo en la URL del feed:

  • https://feeds.feedr.com/your-hash.xml
  • https://feeds.feedr.com/your-hash.csv
  • https://feeds.feedr.com/your-hash.json

Solo estarán disponibles los formatos que hayas configurado en el canal. Si pides un formato que no está configurado, se devolverá un error.

Usar un feed personalizado
Usar un feed personalizado

WARNING

Asegúrate de haber configurado las opciones específicas (elementos de envoltura, delimitadores, etc.) de cada formato que actives. Los valores predeterminados sirven para los casos sencillos, pero la mayoría de las integraciones necesitarán algún ajuste.

Duplicar un canal personalizado ​

Puedes duplicar un canal personalizado existente para crear una copia con todos sus campos de salida y configuraciones de formato intactos. Es útil cuando necesitas un canal parecido con pequeñas variaciones: duplícalo y ajusta las diferencias en lugar de empezar desde cero.

Puedes duplicar un canal personalizado existente para crear una copia con todos sus campos de salida y configuraciones de formato intactos. Es útil cuando necesitas un canal parecido con pequeñas variaciones: duplícalo y ajusta las diferencias en lugar de empezar desde cero.