Wat je leert

Leer hoe je de catalog tag gebruikt, waarmee je in je e-mails, sms en pushberichten kunt verwijzen naar specifieke productinformatie uit je catalogus. Dit is handig als je aangepaste productaanbevelingen wilt maken of productinformatie wilt kruislings vergelijken. Als je bijvoorbeeld je eigen aanbevelingsengine gebruikt, kun je je eigen productaanbevelingen als event- of profielgegevens aan Klaviyo doorgeven en die gegevens vervolgens gebruiken in templates.

Houd er rekening mee dat deze handleiding is ontworpen voor technisch onderlegde marketeers of klanten die toegang hebben tot een developer.

De {% catalog %} tag

De tag {% catalog %} gebruikt de volgende syntaxis:

text
{% catalog "itemID" unpublished="cancel" %}
...
{% endcatalog %}

Vervang itemID door de item-ID die wordt weergegeven op de pagina met productdetails in Klaviyo. De waarde moet overeenkomen met de item-ID die in je catalogus is opgeslagen; gebruik alleen een SKU als dit ook de item-ID in de catalogus is. Laat aanhalingstekens rond een letterlijke ID staan. Als je een gebeurtenis- of profielvariabele gebruikt, laat je de variabele zonder aanhalingstekens staan, zoals in de onderstaande voorbeelden.

Als je unpublished="cancel" opneemt, wordt het bericht niet verzonden als het item waarnaar wordt verwezen niet is gepubliceerd in je Klaviyo-catalogus. Dit argument is optioneel. Zonder dit kan een niet-gepubliceerd item nog steeds in het bericht worden weergegeven.

  • Als een lookup met unpublished="cancel" op het moment van de lookup een niet-gepubliceerd item vindt, wordt het hele bericht voor die ontvanger overgeslagen.
  • Open voor een flowbericht de analytics en selecteer Activiteit van ontvangers > Overgeslagen. Selecteer in de vervolgkeuzelijst Type Overgeslagen: catalogusartikel niet beschikbaar. Deze lijst bevat profielen waarvan berichten zijn overgeslagen omdat een item waarnaar werd verwezen niet kon worden gevonden, of omdat er met unpublished="cancel" een niet-gepubliceerd item is opgezocht. Een item kan niet gepubliceerd zijn omdat het niet op voorraad is of om een andere reden niet beschikbaar is in je catalogus.

Wanneer je deze functie gebruikt, kun je tussen de openings- en sluitende catalogustags verwijzen naar specifieke gegevens van het item dat is gekoppeld aan de itemID in je Klaviyo-productcatalogus.

De volgende gegevens zijn beschikbaar als referentie binnen een {% catalog %} -blok.

Templatetag

Naam

Beschrijving

{{ catalog_item.description }}

Beschrijving

De beschrijving van het item.

{{ catalog_item.url }}

URL

De URL voor toegang tot het item in je winkel.

{{ catalog_item.title }}

Titel

De titel van het item.

{% currency_format catalog_item.metadata|lookup:"price" %}

Prijs

De prijs van een item, opgemaakt met de valuta-instellingen voor de template of account. Deze tag maakt de waarde op; het zet de prijs niet om naar een andere valuta.

{{ catalog_item.currency_symbol }}

Valutasymbool

Het grafische symbool dat wordt gebruikt om een valuta-eenheid aan te duiden

{{ catalog_item.currency_code }}

Valutacode

De alfabetische code die wordt gebruikt om valuta aan te duiden

{{ catalog_item.featured_image.full.src }}

Volledige afbeelding

De URL voor de volledige afbeelding van het item. Gebruik dit in een afbeeldingsblok, of een <img> -tag.

{{ catalog_item.featured_image.thumbnail.src }}

Thumbnail

De URL voor de miniatuurafbeelding van het item. Gebruik dit in een <img> -tag in aangepaste HTML, of gebruik het als een URL voor een dynamische afbeeldingsplaceholder, omringd door de openings- en sluitende {% catalog %}-tags.

{{ catalog_item.id }}

ID

De product-ID van het item.

Er zijn mogelijk extra gegevensvelden beschikbaar die als metadata worden beschouwd. Om naar een van deze extra itemeigenschappen te verwijzen, kun je de variabele syntaxis gebruiken: {{ catalog_item.metadata.color }}. In dit geval haalt de variabele de waarde "color" op die is gekoppeld aan het item dat is opgeslagen in de metadata van het item.

Om een preview te bekijken van alle beschikbare gegevens die op een item zijn opgeslagen – inclusief alle metadata – voeg je het volgende snippet toe aan een tekstblok in een testtemplate en werk je itemID bij met de item-ID van een van de huidige producten in je catalogus.

text
{% catalog "itemID" %}
{{ catalog_item }}
{% endcatalog %}

Bekijk daarna een voorbeeld van het bericht. Deze preview biedt een onbewerkte versie van alle gegevens die beschikbaar zijn voor je producten.

Filteren op catalogus-ID

Als je meerdere catalogi hebt, gebruik je het argument catalog_id in de opening tag {% catalog %} om een catalogus op te geven. Je moet ook integration opnemen, met beide waarden tussen aanhalingstekens. Je kunt bijvoorbeeld een catalogus hebben die is gesynchroniseerd via een Klaviyo-integratie zoals Shopify, een catalogus die is gesynchroniseerd via de API, of een aangepaste catalogusfeed. De integratiewaarde moet overeenkomen met de catalogusbron. In het onderstaande voorbeeld wordt integration="api" gebruikt om een productbeschrijving uit een API-catalogus op te halen.

Zoek eerst de catalogus-ID:

  1. Navigeer in Klaviyo naar Content > Producten.
  2. Gebruik het filter Catalogusopties om de catalogus te selecteren die je wilt gebruiken. De standaardselectie is Alle catalogi.
Screenshot 2025-05-13 at 12.08.19 PM.png
Screenshot 2025-05-13 at 12.08.19 PM.png
  1. Kopieer de catalogus-ID uit de URL.

Zoek vervolgens de item-ID:

  1. Nadat je de catalogus hebt geselecteerd, selecteer je het product dat je wilt gebruiken uit de catalogus.
  2. Op de pagina met productgegevens zie je de item-ID.

Voor het bovenstaande voorbeeld zou de code er zo uitzien:

text
{% catalog "SAMPLE-DATA-ITEM-15" integration="api" catalog_id="1060935"%} {{ catalog_item.description }}{% endcatalog %}

Vervang de voorbeeld-item-ID en catalogus-ID door je eigen waarden, bekijk vervolgens een voorbeeld van het bericht en controleer of het de verwachte productgegevens toont. Als de lookup geen match kan vinden in de catalogus die je opgeeft, kan deze terugvallen op een andere catalogus in je account.

Filteren op taalinstelling

Als je catalogus gelokaliseerde productgegevens bevat, zoals een Shopify-catalogus met gelokaliseerde gegevens die zijn gesynchroniseerd met Klaviyo, kun je een product op basis van locale opzoeken. Neem zowel taal als regio op en gebruik daarvoor 2-letterige taal- en landcodes uit respectievelijk ISO 639 en ISO 3166. Bijvoorbeeld: language='fr' en region='CA' vragen Franse productgegevens voor Canada op. Als er geen gelokaliseerd product kan worden gevonden, wordt de standaardproductinformatie gebruikt.

text
{% catalog "SAMPLE-DATA-ITEM-15" integration="api" catalog_id="1060935" language='fr' region='CA' %} {{ catalog_item.description }}{% endcatalog %}

Zoek een item-ID op dat met een event wordt doorgegeven

Het gebruik van een catalogusopzoeking met een event wordt vooral in de volgende scenario's gebruikt:

  • Als je een aangepaste integratie gebruikt waarbij productaanbevelingen samen met een event worden doorgegeven om in het bericht te tonen. Bijvoorbeeld een bericht voor website verlaten, waarbij unieke aanbevelingen worden gegenereerd op basis van bekeken items. In plaats van het enkele item dat een klant heeft bekeken in het bericht te vullen, kun je een set aanbevolen items genereren en vullen op basis van dat bekeken item. Er moet een set product-ID's samen met het event naar Klaviyo worden gestuurd.
  • Als je een aangepaste integratie gebruikt en je liever niet alle productgegevens verstuurt die in een bericht moeten staan. Bijvoorbeeld: bij een winkelwagen verlaten-bericht verstuur je alleen de product-ID's van alle verlaten items en kan Klaviyo elk item opzoeken om alle relevante details op te halen. Het is niet nodig dat elke gebeurtenis een productnaam, prijs, afbeelding, enz. bevat, omdat dit allemaal kan worden ingevuld door alleen de product-ID door te geven aan Klaviyo en vervolgens de informatie op te zoeken in je Klaviyo-productcatalogus.

Als je een {% catalog %} -tag gebruikt met een event, is de lookup gebaseerd op de item-ID van het catalogusitem (dit is Product ID of SKU, afhankelijk van de integraties).

Voor een event waarbij de doorgegeven identificerende waarde de item-ID is, zien de lookup tags er zo uit:

text
{% catalog event.ItemID %}
...
{% endcatalog %}

Voeg binnen dit {% catalog %} -blok templatetags toe voor de data die je voor elk item wilt invullen (bijv. titel of afbeelding).

Als je bijvoorbeeld de onderstaande voorbeeldgegevens van het catalogusitem gebruikt, kunnen we een {% catalog %} -blok opzetten dat verwijst naar belangrijke productinformatie:

Catalogusitemgegevens:

text
{
  "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"
  }
}

Syntaxis van templateblokken:

Het volgende HTML-voorbeeld haalt de itemafbeelding, titel en beschrijving op voor elk item in event.Items. Er wordt vanuit gegaan dat elk item een waarde voor SKU heeft die overeenkomt met de item-ID in je Klaviyo-catalogus. Als je event een andere eigenschap gebruikt voor de catalogusitem-ID, vervang je item.SKU door die eigenschap. Gebruik de HTML-voorbeelden in een e-mail; gebruik voor sms of push de catalogus-tags met tekstvelden in plaats van HTML-markup.

text
{% for item in event.Items %}
	{% catalog item.SKU %}
 		<img src="{{ catalog_item.featured_image.full.src }}"/>
 		{{ catalog_item.title }}
 		{{ catalog_item.description }}
 	{% endcatalog %}
{% endfor %}

Als de opzoekactie het item dat wordt gezocht niet kan vinden, wordt het bericht overgeslagen en niet verzonden.

Een item-ID opzoeken als een aangepaste eigenschap

Als je je eigen aanbevelingsengine gebruikt, kun je aanbevolen item-ID's als een aangepaste profieleigenschap doorgeven aan profielen in Klaviyo. Met een {% catalog %} -tag kun je informatie van elk van deze producten gebruiken wanneer je deze klant een bericht stuurt.

Als de opzoekactie het item dat wordt gezocht niet kan vinden, wordt het bericht overgeslagen en niet verzonden.

Syntaxis voor meerdere item-ID's die in één eigenschap zijn opgeslagen

Sla Recommended Products op als een lijst met item-ID's, zoals ["KLAVIYO-TSHIRT", "KLAVIYO-HAT"]. Vervang deze voorbeeld-ID's door ID's uit je catalogus en vervang de eigenschapsnaam in de code als die bij jou anders is.

text
{% 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 %}

Syntaxis voor één item-ID in een profieleigenschappen

Sla één item-ID op als een tekstwaarde in Recommended Products, zoals KLAVIYO-TSHIRT. Gebruik de eigenschapsnaam en item-ID uit je eigen account.

text
{% 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>

Over de has_category-tag

Gebruik de has_category -tag om te bepalen of een item in je catalogus deel uitmaakt van een bepaalde categorie. Het moet worden gebruikt binnen een catalog lookup-tag voor een bepaald item.

Gebruik de onderstaande voorbeeldcode om deze tag te gebruiken, waarbij je itemID vervangt door een product-ID uit je catalogus en category_name door de volledige naam of een deel van een categorienaam.

text
{% catalog "itemID" %}
{{ catalog_item.title }}
{% has_category catalog_item "category_name" as in_category %}
{% if in_category %}
I am on sale!
{% else %}
{% endif %}
{% endcatalog %}

Dit voorbeeld geeft de producttitel weer en controleert vervolgens of het product in een categorie staat, category_name. Als dit als true wordt geëvalueerd, verschijnt het bericht "I am on sale!" na de producttitel.

De has_category -tag zoekt naar volledige en gedeeltelijke overeenkomsten met de categorienaam die je instelt. Als je bijvoorbeeld “sale” gebruikt als categorienaam en een product de tag “on-sale” heeft, dan wordt de has_category -tag voor dat product geëvalueerd als true.

Extra hulpbronnen

  • Hoe gebruik je productfeed en aanbevelingen

    Leer hoe je een productfeed maakt in Klaviyo om productaanbevelingen te gebruiken in je berichtgeving. productfeed nemen gegevens op uit je productcatalogus en klantgedrag (bijv. de producten die ze in het verleden hebben bekeken of gekocht) en gebruiken deze informatie om aangepaste productaanbevelingen voor je abonnee te doen.

Was dit artikel nuttig?
Gebruik dit formulier alleen voor feedback op artikelen. Meer informatie over hoe je contact opneemt met support.

Ontdek meer van Klaviyo

Community
Maak contact met collega's, partners en Klaviyo-experts om inspiratie op te doen, inzichten te delen en antwoorden te krijgen op al je vragen.
Partners
Huur een Klaviyo-gecertificeerde expert in om je te helpen met een specifieke taak of voor doorlopend marketingbeheer.
Support

Krijg ondersteuning via je account.

E-mailsupport (gratis proefperiodes en betaalde accounts) 24/7 beschikbaar

Chat-/virtuele assistentie
Beschikbaarheid varieert per locatie en type abonnement