Referencia de etiquetas de búsqueda de catálogo
Objetivos del artículo
Descubre cómo usar la etiqueta de catálogo, que te permite hacer referencia a información específica de productos de tu catálogo en tus correos electrónicos, SMS y mensajes push. Esto es útil cuando quieres crear recomendaciones de productos personalizadas o cruzar información de productos. Por ejemplo, si usas tu propio motor de recomendaciones, puedes pasar tus propias recomendaciones de productos como datos de evento o de perfil a Klaviyo y luego usar esos datos en plantillas.
Ten en cuenta que esta guía está diseñada para profesionales del marketing con conocimientos técnicos o clientes que tienen acceso a un desarrollador.
La etiqueta {% catalog %}
La etiqueta {% catalog %} usa la siguiente sintaxis:
{% catalog "itemID" unpublished="cancel" %}
...
{% endcatalog %}Reemplaza itemID con el ID de artículo que se muestra en la página de detalles del producto en Klaviyo. El valor debe coincidir con el ID del artículo almacenado en el catálogo; usa un SKU solo si también es el ID del artículo del catálogo. Mantén las comillas alrededor de un ID literal. Cuando uses una variable de evento o de perfil, deja la variable sin comillas, como se muestra en los ejemplos a continuación.
Incluir unpublished="cancel" evita que el mensaje se envíe si el elemento al que se hace referencia no está publicado en tu catálogo de Klaviyo. Este argumento es opcional. Sin esto, un elemento no publicado aún puede aparecer en el mensaje.
- Si alguna búsqueda con unpublished="cancel" encuentra un elemento sin publicar en el momento de la búsqueda, se omite todo el mensaje para ese destinatario.
- Para un mensaje de flujo, abre sus analíticas y selecciona Actividad de destinatarios > Omitidos. En el menú desplegable Tipo, selecciona Se omitió: artículo del catálogo no disponible. Esta lista incluye perfiles cuyos mensajes se omitieron porque no se pudo encontrar un artículo al que se hacía referencia o porque se buscó un artículo no publicado con
unpublished="cancel". Es posible que un artículo no esté publicado porque está agotado o porque no está disponible en tu catálogo.
Al usar esta función, entre las etiquetas de apertura y cierre del catálogo, puedes hacer referencia a datos específicos del artículo asociado con el itemID en el catálogo de productos de Klaviyo.
Los siguientes datos están disponibles para hacer referencia dentro de un bloque {% catalog %}.
Etiqueta de plantilla | Nombre | Descripción |
|---|---|---|
| Descripción | La descripción del artículo. |
| URL | La URL para acceder al artículo en la tienda. |
| Título | El título del artículo. |
| Precio | El precio de un artículo, con formato según la configuración de moneda de la plantilla o la cuenta. Esta etiqueta da formato al valor; no convierte el precio a otra moneda. |
| Símbolo de moneda | El símbolo gráfico que se usa para indicar una unidad de moneda |
| Código de moneda | El código alfabético que se usa para indicar la moneda |
| Imagen completa | La URL de la imagen completa del artículo. Usa esto dentro de un bloque de imagen o de una etiqueta <img>. |
| Miniatura | La URL de la imagen en miniatura del artículo. Úsala en una etiqueta <img> en HTML personalizado, o úsala como una URL de marcador de posición de imagen dinámica, rodeada por las etiquetas de apertura y cierre {% catalog %}. |
| ID | El ID del producto del artículo. |
Es posible que haya campos de datos adicionales disponibles que se consideren metadatos. Para hacer referencia a una de estas propiedades adicionales del artículo, puedes usar la sintaxis de variable: {{ catalog_item.metadata.color }}. En este caso, la variable incorporará el valor de "color" asociado con el artículo almacenado en los metadatos del artículo.
Para acceder a una vista previa de todos los detalles disponibles almacenados en un elemento —incluidos todos los metadatos—, agrega el siguiente fragmento a un bloque de texto en una plantilla de prueba y actualiza itemID con el ID del elemento de uno de los productos actuales en tu catálogo.
{% catalog "itemID" %}
{{ catalog_item }}
{% endcatalog %}Luego, previsualiza el mensaje. Esta vista previa proporciona una versión sin procesar de todos los datos disponibles para tus productos.
Filtrado por ID de catálogo
Si tienes varios catálogos, usa el argumento catalog_id en la etiqueta {% catalog %} de apertura para especificar un catálogo. También debes incluir integration, con ambos valores entre comillas. Por ejemplo, podrías tener un catálogo sincronizado mediante una integración de Klaviyo como Shopify, un catálogo sincronizado mediante la interfaz de programación de aplicaciones (API) o un feed de catálogo personalizado. El valor de integración debe coincidir con la fuente del catálogo. El ejemplo a continuación usa integration="api" para extraer la descripción de un producto de un catálogo de interfaz de programación de aplicaciones (API).
Primero, encuentra el ID del catálogo:
- En Klaviyo, navega a Contenido > Productos.
- Usa el filtro Opciones de catálogo para seleccionar el catálogo que quieres usar. La selección predeterminada es Todos los catálogos.

- Copia el ID del catálogo desde la URL.

Luego, busca el ID del elemento:
- Después de seleccionar el catálogo, selecciona el producto que quieras usar del catálogo.
- En la página de detalles del producto, verás el ID del artículo.

Para el ejemplo anterior, el código se vería así:
{% catalog "SAMPLE-DATA-ITEM-15" integration="api" catalog_id="1060935"%} {{ catalog_item.description }}{% endcatalog %}Reemplaza el ID del artículo de muestra y el ID del catálogo con tus propios valores; luego, previsualiza el mensaje y verifica que muestre los detalles del producto esperados. Si la búsqueda no puede encontrar una coincidencia en el catálogo que especificas, puede recurrir a otro catálogo en tu cuenta.
Filtrar por configuración regional
Si el catálogo contiene datos de producto localizados, como un catálogo de Shopify con datos localizados sincronizados con Klaviyo, puedes buscar un producto por configuración regional. Incluye tanto el idioma como la región, con códigos de 2 letras de idioma y de país de ISO 639 e ISO 3166, respectivamente. Por ejemplo, language='fr' y region='CA' solicitan datos de producto en francés para Canadá. Si no se encuentra un producto localizado, se usa la información de producto predeterminada.
{% catalog "SAMPLE-DATA-ITEM-15" integration="api" catalog_id="1060935" language='fr' region='CA' %} {{ catalog_item.description }}{% endcatalog %}Buscar un ID de artículo pasado con un evento
Usar una búsqueda de catálogo con un evento se utiliza principalmente en los siguientes escenarios:
- Si usas una integración personalizada en la que las recomendaciones de productos se envían junto con un evento para mostrarlas en el mensaje. Por ejemplo, un mensaje de abandono de la navegación en el que se generan recomendaciones únicas en función de los artículos vistos. En lugar de completar el único artículo que un cliente vio en el mensaje, puedes generar y completar un conjunto de artículos recomendados en función de ese artículo visto. Es necesario enviar un conjunto de ID de producto a Klaviyo junto con el evento.
- Si usas una integración personalizada y prefieres no enviar todos los detalles del producto que deben incluirse en un mensaje. Por ejemplo, con un mensaje de carrito abandonado, envía solo los Product IDs de todos los artículos abandonados y Klaviyo puede buscar cada uno para extraer todos los detalles relevantes. No es necesario que cada evento incluya el nombre del producto, el precio, la imagen, etc., ya que todo esto se puede completar con solo enviar el Product ID a Klaviyo y luego buscar la información en el catálogo de productos de Klaviyo.
Al usar una etiqueta {% catalog %} con un evento, la búsqueda se basa en el ID del artículo del artículo del catálogo (será el ID del producto o el SKU, según la integración).
Para un evento en el que el valor de identificación que se pasa es el ID del artículo, las etiquetas de búsqueda aparecerán así:
{% catalog event.ItemID %}
...
{% endcatalog %}Dentro de este bloque {% catalog %}, agrega etiquetas de plantilla para los datos que te gustaría completar sobre cada elemento (p. ej., el título o la imagen).
Por ejemplo, con los datos de muestra del artículo del catálogo a continuación, podemos crear un bloque {% catalog %} que haga referencia a información clave del producto:
Datos de artículos del catálogo:
{
"description": "Standard issue for all Klaviyos. This t-shirt has the Klaviyo logo on the front and mark diagram on the back.",
"url": "https://klaviyogear.myshopify.com/collections/klaviyo-classics/products/short-sleeve-t-shirt-1",
"title": "Classic Klaviyo T-Shirt",
"featured_image": {
"full": {
"src": "https://www.klaviyo.com/media/images/examples/products/klaviyo-tshirt-full.png"
},
"thumbnail": {
"src": "https://www.klaviyo.com/media/images/examples/products/klaviyo-tshirt-thumbnail.png"
}
},
"id": "KLAVIYO-TSHIRT",
"metadata": {
"Color": "Grey",
"Design": "Standard"
}
}Sintaxis de bloque de plantilla:
El siguiente ejemplo de HTML incorpora la imagen, el título y la descripción del artículo para cada artículo en event.Items. Supone que cada artículo tiene un valor de SKU que coincide con el ID de artículo en tu catálogo de Klaviyo. Si tu evento usa una propiedad diferente para el ID de artículo del catálogo, reemplaza item.SKU por esa propiedad. Usa los ejemplos de HTML en un correo electrónico; para SMS o notificaciones push, usa las etiquetas del catálogo con campos de texto en lugar de marcado HTML.
{% for item in event.Items %}
{% catalog item.SKU %}
<img src="{{ catalog_item.featured_image.full.src }}"/>
{{ catalog_item.title }}
{{ catalog_item.description }}
{% endcatalog %}
{% endfor %}Si la búsqueda no puede encontrar el artículo que está buscando, el mensaje se omite y no se envía.
Busca un ID de artículo como una propiedad personalizada
Si usas tu propio motor de recomendaciones, puedes pasar los ID de artículos recomendados a los perfiles en Klaviyo como una propiedades del perfil. Con una etiqueta {% catalog %}, puedes hacer referencia a la información de cualquiera de estos productos al enviar mensajes a este cliente.
Si la búsqueda no puede encontrar el artículo que está buscando, el mensaje se omite y no se envía.
Sintaxis para varios ID de artículos almacenados en una sola propiedad
Almacena Recommended Products como una lista de IDs de artículos, como ["KLAVIYO-TSHIRT", "KLAVIYO-HAT"]. Reemplaza estos IDs de ejemplo por IDs de tu catálogo y reemplaza el nombre de la propiedad en el código si el tuyo es diferente.
{% for item in person|lookup:'Recommended Products' %}{% catalog item %}
<img src="{{ catalog_item.featured_image.thumbnail.src }}" style="display: inline-block; border: none" width="150px" />
<p>{{ catalog_item.title }} {% endcatalog %}</p>
{% endfor %}Sintaxis para un ID de elemento único en una de las propiedades del perfil
Guarda un solo ID de artículo como un valor de texto en Recommended Products, como KLAVIYO-TSHIRT. Usa el nombre de la propiedad y el ID de artículo de tu propia cuenta.
{% catalog person|lookup:"Recommended Products" %}
<img style="display: inline-block; border: none;" src="{{ catalog_item.featured_image.thumbnail.src }}" width="150px"/>
<p>{{ catalog_item.title }} {% endcatalog %}</p>Acerca de la etiqueta has_category
Usa la etiqueta has_category para determinar si un elemento de tu catálogo forma parte de una categoría específica. Debe usarse dentro de una etiqueta de búsqueda en el catálogo para un elemento en particular.
Usa el código de muestra a continuación para usar esta etiqueta, reemplazando itemID con un ID de producto de tu catálogo y category_name con todo o parte del nombre de una categoría.
{% catalog "itemID" %}
{{ catalog_item.title }}
{% has_category catalog_item "category_name" as in_category %}
{% if in_category %}
I am on sale!
{% else %}
{% endif %}
{% endcatalog %}Este ejemplo muestra el título del producto y luego revisa si el producto está en una categoría, category_name. Si esto se evalúa como true, el mensaje "¡Estoy en oferta!" aparecerá después del título del producto.
La etiqueta has_category busca coincidencias completas y parciales con el nombre de categoría que configures. Por ejemplo, si usas “sale” como nombre de categoría y un producto tiene una etiqueta “on-sale”, la etiqueta has_category se evaluará como true para ese producto.
Recursos adicionales
- Cómo usar fuentes de productos y recomendaciones
Descubre cómo crear una fuente de productos en Klaviyo para usar recomendaciones de productos en tus mensajes. Las fuentes de productos incorporan datos de tu catálogo de productos y del comportamiento de los clientes (p. ej., los productos que han visto o comprado anteriormente) y usan esta información para ofrecer recomendaciones de productos personalizadas para tus suscriptores.