> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wisepim.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Content Logic

> Bouw herbruikbare variabelen, formules en conditionele blokken die automatisch productteksten genereren. Schrijf een regel eenmaal en pas hem toe op je hele catalogus.

Met Content Logic definieer je herbruikbare variabelen, formules en conditionele blokken. Ze genereren en formatteren je productcontent automatisch. Schrijf een regel eenmaal en pas hem toe op je hele catalogus, in plaats van dezelfde patronen steeds met de hand te herhalen.

<Info>
  Content Logic is in **Bèta**. Selecteer een project en open het via **Instellingen > Content Logic**.
</Info>

## Waarom Content Logic gebruiken?

<img className="block dark:hidden" src="https://mintcdn.com/swiftsyncai/m6j0mqBse5HmOBFi/images/marketing-screenshots/settings/settings-content-logic-light-branded.webp?fit=max&auto=format&n=m6j0mqBse5HmOBFi&q=85&s=064868c701fe22d731d24318aaf343c6" alt="WISEPIM content logic builder with reusable variables, formulas and channel rules" width="2400" height="1445" data-path="images/marketing-screenshots/settings/settings-content-logic-light-branded.webp" />

<img className="hidden dark:block" src="https://mintcdn.com/swiftsyncai/Q3dIqlj_CJMF6Idi/images/marketing-screenshots/settings/settings-content-logic-dark-branded.webp?fit=max&auto=format&n=Q3dIqlj_CJMF6Idi&q=85&s=f6bc622be0e1f4ed886c3e07aa6b42ae" alt="WISEPIM content logic builder with reusable variables, formulas and channel rules" width="2400" height="1445" data-path="images/marketing-screenshots/settings/settings-content-logic-dark-branded.webp" />

<CardGroup cols={2}>
  <Card title="Consistentie op schaal" icon="copy">
    Definieer een contentpatroon eenmaal. Pas het automatisch toe op honderden of duizenden producten.
  </Card>

  <Card title="Dynamische content" icon="zap">
    Gebruik formules en voorwaarden zodat content zich aanpast aan de attributen, het merk of de categorie van elk product.
  </Card>

  <Card title="Kanaaloptimalisatie" icon="monitor">
    Hervorm content per kanaal: inkorten voor marktplaatsen, opmaken voor je webshop, HTML verwijderen voor feeds.
  </Card>

  <Card title="Minder handmatig werk" icon="clock">
    Stop met kopiëren en plakken. Laat variabelen en voorwaarden de content voor je genereren.
  </Card>
</CardGroup>

<Info>
  Content Logic vereist dat je project **[productfamilies](/nl/products/product-families)**, **[categorieën](/nl/other-features/managing-categories)** en **[productattributen](/nl/other-features/managing-attributes)** heeft ingesteld. Merkvariabelen mappen naar je productfamilies. Categorievariabelen mappen naar je categorieën.
</Info>

## Hoe variabelen werken

Elke variabele gebruikt de `{{scope.key}}`-syntax. Typ `{{` in een veld met formuleondersteuning om de autocomplete-dropdown te openen en te zien wat beschikbaar is.

```
{{product.name}}            → de productnaam
{{global.company_name}}     → je bedrijfsnaam
{{brand.tagline}}           → de tagline van het merk
{{category.material}}       → het materiaal van de categorie
{{current.year}}            → het huidige jaar
{{channel.description_short}} → de getransformeerde beschrijving
```

WISEPIM lost variabelen automatisch op wanneer het content verwerkt: bij export, in AI-prompts, bij bulkacties en overal waar het content genereert.

### De zeven scopes

Content Logic groepeert variabelen in zeven tabbladen. Elk tabblad toont een tellerbadge wanneer het variabelen bevat, zodat je in één oogopslag ziet welke scopes je gebruikt.

| Tabblad          | Syntax                           | Waarvoor het dient                                        |
| ---------------- | -------------------------------- | --------------------------------------------------------- |
| **Standaard**    | `{{product.*}}`, `{{current.*}}` | Ingebouwde variabelen die worden opgelost uit productdata |
| **Globaal**      | `{{global.*}}`                   | Gedeelde waarden die gelijk blijven op elk product        |
| **Merken**       | `{{brand.*}}`                    | Waarden die per merk of productfamilie verschillen        |
| **Categorieën**  | `{{category.*}}`                 | Waarden die per categorie verschillen                     |
| **Producten**    | `{{product.*}}` (aangepast)      | Berekende waarden uit formules op productvelden           |
| **Kanalen**      | `{{channel.*}}`                  | Content hervormd voor een specifiek verkoopkanaal         |
| **Conditioneel** | `{{if key}}`                     | Content die verandert op basis van productdata            |

## Standaardvariabelen

<sub>[Bekijk voorbeelden en use cases →](/nl/workflows/content-logic/default-variables)</sub>

Het tabblad Standaard is een alleen-lezen lijst van elke ingebouwde variabele. Deze worden automatisch opgelost, dus je maakt ze nooit aan. Je aangepaste productattributen verschijnen hier ook, aangeduid als `{{attribute.your_attribute_code}}`.

<Tip>
  Blader door het tabblad Standaard voordat je aangepaste variabelen bouwt. Misschien heb je al wat je nodig hebt.
</Tip>

<AccordionGroup>
  <Accordion title="Datum & tijd">
    | Variabele                  | Voorbeeldwaarde |
    | -------------------------- | --------------- |
    | `{{current.year}}`         | 2026            |
    | `{{current.month}}`        | February        |
    | `{{current.month_number}}` | 02              |
    | `{{current.week}}`         | 8               |
    | `{{current.day}}`          | 17              |
    | `{{current.day_name}}`     | Tuesday         |
    | `{{current.quarter}}`      | Q1              |
    | `{{current.season}}`       | Winter          |
    | `{{current.date}}`         | 2026-02-17      |
  </Accordion>

  <Accordion title="Productidentiteit">
    | Variabele                  | Beschrijving                                   |
    | -------------------------- | ---------------------------------------------- |
    | `{{product.sku}}`          | Stock Keeping Unit                             |
    | `{{product.ean}}`          | European Article Number (barcode)              |
    | `{{product.upc}}`          | Universal Product Code (12-cijferig)           |
    | `{{product.mpn}}`          | Manufacturer Part Number                       |
    | `{{product.brand}}`        | Merknaam                                       |
    | `{{product.supplier}}`     | Leveranciersnaam                               |
    | `{{product.family}}`       | Productfamilie                                 |
    | `{{product.category}}`     | Primaire categorie                             |
    | `{{product.product_type}}` | Simple, Configurable, Virtual, Bundle, Grouped |
  </Accordion>

  <Accordion title="Productcontent">
    | Variabele                       | Beschrijving           |
    | ------------------------------- | ---------------------- |
    | `{{product.name}}`              | Productnaam            |
    | `{{product.description}}`       | Volledige beschrijving |
    | `{{product.short_description}}` | Korte beschrijving     |
    | `{{product.meta_title}}`        | SEO-titel              |
    | `{{product.meta_description}}`  | SEO-beschrijving       |
    | `{{product.meta_keywords}}`     | SEO-trefwoorden        |
    | `{{product.main_image}}`        | Hoofdafbeelding-URL    |
  </Accordion>

  <Accordion title="Prijzen">
    | Variabele                     | Beschrijving                      |
    | ----------------------------- | --------------------------------- |
    | `{{product.price}}`           | Huidige verkoopprijs              |
    | `{{product.special_price}}`   | Actieprijs                        |
    | `{{product.cost}}`            | Inkoop- of kostprijs              |
    | `{{product.savings}}`         | Prijs minus actieprijs            |
    | `{{product.savings_percent}}` | Kortingspercentage                |
    | `{{product.margin}}`          | Prijs minus kostprijs             |
    | `{{product.margin_percent}}`  | Marge als percentage van de prijs |
  </Accordion>

  <Accordion title="Fysieke eigenschappen">
    | Variabele                                                       | Beschrijving        |
    | --------------------------------------------------------------- | ------------------- |
    | `{{product.weight}}`                                            | Gewichtswaarde      |
    | `{{product.weight_unit}}`                                       | g, kg, oz of lb     |
    | `{{product.length}}`, `{{product.width}}`, `{{product.height}}` | Afmetingswaarden    |
    | `{{product.dimension_unit}}`                                    | mm, cm, m, in of ft |
  </Accordion>

  <Accordion title="Voorraad">
    | Variabele                         | Beschrijving                               |
    | --------------------------------- | ------------------------------------------ |
    | `{{product.stock_quantity}}`      | Huidig voorraadniveau                      |
    | `{{product.stock_status}}`        | in\_stock, out\_of\_stock of on\_backorder |
    | `{{product.low_stock_threshold}}` | Drempel voor lage voorraadwaarschuwing     |
  </Accordion>

  <Accordion title="Verzending & douane">
    | Variabele                       | Beschrijving           |
    | ------------------------------- | ---------------------- |
    | `{{product.hs_code}}`           | Harmonized System-code |
    | `{{product.country_of_origin}}` | ISO-landcode           |
  </Accordion>

  <Accordion title="Status & scores">
    | Variabele                      | Beschrijving                          |
    | ------------------------------ | ------------------------------------- |
    | `{{product.status}}`           | active, inactive, pending of archived |
    | `{{product.completion_score}}` | Datavolledigheidspercentage           |
    | `{{product.quality_score}}`    | Algehele kwaliteitsscore              |
  </Accordion>

  <Accordion title="Winkelinfo">
    | Variabele                  | Beschrijving            |
    | -------------------------- | ----------------------- |
    | `{{global.name}}`          | Winkel- of bedrijfsnaam |
    | `{{global.url}}`           | Website-URL             |
    | `{{global.currency}}`      | Valutasymbool           |
    | `{{global.currency_code}}` | ISO-valutacode          |
    | `{{global.locale}}`        | Taalinstelling          |
  </Accordion>
</AccordionGroup>

## Globale variabelen

<sub>[Bekijk voorbeelden en use cases →](/nl/workflows/content-logic/global-variables)</sub>

Globale variabelen zijn sleutel-waardeparen die gelijk blijven op elk product. Gebruik ze voor bedrijfsbrede waarden waarnaar je vaak verwijst.

<Steps>
  <Step title="Open het tabblad Globaal">
    Ga naar **Instellingen > Content Logic** en klik op **Globaal**.
  </Step>

  <Step title="Voeg een variabele toe">
    Klik op **Variabele toevoegen**. Voer een sleutel in (alleen letters, cijfers en underscores) en een waarde. Het waardeveld ondersteunt autocomplete. Typ `{{` om andere variabelen te verwijzen.
  </Step>

  <Step title="Gebruik het in content">
    Verwijs ernaar als `{{global.your_key}}` overal waar variabelen worden ondersteund.
  </Step>
</Steps>

### Veelgebruikte globale variabelen

| Sleutel              | Voorbeeldwaarde                                   | Toepassing                              |
| -------------------- | ------------------------------------------------- | --------------------------------------- |
| `company_name`       | ACME Industrial BV                                | Productbeschrijvingen, juridische tekst |
| `website_url`        | shop.example.com                                  | CTA's en links                          |
| `support_email`      | [support@example.com](mailto:support@example.com) | Contactinformatie                       |
| `return_policy`      | 30 dagen retourbeleid, geen vragen gesteld.       | Productpagina's, beschrijvingen         |
| `shipping_promise`   | Gratis verzending bij bestellingen boven €50.     | Promotionele content                    |
| `warranty_text`      | 2 jaar fabrieksgarantie inbegrepen.               | Productspecificaties                    |
| `lead_time_text`     | Verzending binnen 3–5 werkdagen.                  | B2B-bestelinformatie                    |
| `moq_default`        | 1                                                 | Standaard minimale bestelgrootte        |
| `compliance_general` | Alle producten voldoen aan EU-regelgeving.        | Juridische en nalevingsfooters          |

<Tip>
  Een globale variabele kan andere variabelen verwijzen in zijn waarde. `return_policy` kan bijvoorbeeld `{{global.company_name}}` bevatten om de bedrijfsnaam automatisch in te voegen.
</Tip>

## Merkvariabelen

<sub>[Bekijk voorbeelden en use cases →](/nl/workflows/content-logic/brand-variables)</sub>

Met merkvariabelen definieer je een set velden en vul je per merk verschillende waarden in. Ze mappen naar je **productfamilies**: elke productfamilie is een merk. Dit is ideaal wanneer merken andere boodschappen, nalevingsverklaringen of specificaties nodig hebben.

<Steps>
  <Step title="Definieer de velden">
    Maak op het tabblad **Merken** de velden aan die je per merk wilt. Elk veld heeft een **sleutel**, een **label** en een **type** (tekst, lange tekst of URL).
  </Step>

  <Step title="Vul waarden in per merk">
    Selecteer een merk uit het dropdown en vul de velden in. Een voortgangsindicator toont hoeveel velden klaar zijn, bijvoorbeeld "3/5 ingevuld".
  </Step>

  <Step title="Verwijs in content">
    Gebruik `{{brand.your_key}}` in productcontent. WISEPIM lost het op vanuit het merk van elk product.
  </Step>
</Steps>

### Veldtypes

| Type            | Invoer                       | Toepassing                                         |
| --------------- | ---------------------------- | -------------------------------------------------- |
| **Tekst**       | Enkele regel                 | Taglines, korte waarden                            |
| **Lange tekst** | Tekstvak met meerdere regels | Oorsprongsverhalen, nalevingstekst, beschrijvingen |
| **URL**         | URL-invoer met validatie     | Merkwebsites, logo-URL's                           |

### Voorbeeldvelden

| Sleutel           | Label                  | Type        | Merk A waarde                                | Merk B waarde                                  |
| ----------------- | ---------------------- | ----------- | -------------------------------------------- | ---------------------------------------------- |
| `tagline`         | Tagline                | Tekst       | Innovation for Life                          | Built to Last                                  |
| `origin_story`    | Oorsprongsverhaal      | Lange tekst | Opgericht in 1985 in München...              | Familiebedrijf sinds 1962...                   |
| `compliance_text` | Naleving               | Lange tekst | ISO 9001:2015 gecertificeerd. REACH-conform. | CE-gemarkeerd. RoHS-conform. UL-geregistreerd. |
| `website`         | Website                | URL         | [https://brand-a.com](https://brand-a.com)   | [https://brand-b.com](https://brand-b.com)     |
| `moq`             | Min. bestelhoeveelheid | Tekst       | 50                                           | 100                                            |

Een product van Merk A krijgt "Innovation for Life" voor `{{brand.tagline}}`. Een product van Merk B krijgt "Built to Last".

## Categorievariabelen

<sub>[Bekijk voorbeelden en use cases →](/nl/workflows/content-logic/category-variables)</sub>

Categorievariabelen werken als merkvariabelen, maar zijn gekoppeld aan productcategorieën. Definieer een set velden en vul vervolgens waarden in per categorie.

### Voorbeeldvelden

| Sleutel             | Label       | Categorie: Bevestigingsmiddelen                                    | Categorie: Elektrisch                               |
| ------------------- | ----------- | ------------------------------------------------------------------ | --------------------------------------------------- |
| `material`          | Materiaal   | Roestvast staal AISI 304                                           | Koper / PVC                                         |
| `care_instructions` | Onderhoud   | Bewaar op droge omstandigheden                                     | Houd weg van vocht                                  |
| `short_intro`       | Korte intro | Hoogwaardige bevestigingsmiddelen voor constructieve toepassingen. | Elektrische componenten voor industriële bedrading. |
| `size_guide_url`    | Maatgids    | /guides/fastener-sizes                                             | /guides/wire-gauges                                 |

Verwijs ernaar als `{{category.material}}`, `{{category.care_instructions}}`, enzovoort. Elk product krijgt de waarden van zijn primaire categorie.

## Productvariabelen (berekend)

<sub>[Bekijk voorbeelden en use cases →](/nl/workflows/content-logic/product-variables)</sub>

Productvariabelen gebruiken formules om nieuwe waarden te berekenen uit bestaande productdata. Ze worden per product herberekend.

<Steps>
  <Step title="Open het tabblad Producten">
    Ga naar **Instellingen > Content Logic** en klik op **Producten**.
  </Step>

  <Step title="Voeg een variabele toe">
    Klik op **Variabele toevoegen**. Voer een label, sleutel en formule in. Gebruik **Veld invoegen** en **Operator invoegen** om hem te bouwen, of typ `{{` voor autocomplete.
  </Step>

  <Step title="Controleer het voorbeeld">
    Het live voorbeeld lost je formule op met voorbeelddata, zodat je de output kunt verifiëren voordat je opslaat.
  </Step>
</Steps>

### Formule-operators

<AccordionGroup>
  <Accordion title="Rekenkundig">
    | Operator | Beschrijving     | Voorbeeld                                                          |
    | -------- | ---------------- | ------------------------------------------------------------------ |
    | `+`      | Optellen         | `{{product.price}} + 10`                                           |
    | `-`      | Aftrekken        | `{{product.price}} - {{product.cost}}`                             |
    | `*`      | Vermenigvuldigen | `{{product.price}} * 1.21`                                         |
    | `/`      | Delen            | `{{product.price}} / {{product.stock_quantity}}`                   |
    | `%`      | Modulo           | `{{product.stock_quantity}} % 12`                                  |
    | `( )`    | Groepering       | `({{product.price}} - {{product.cost}}) / {{product.price}} * 100` |
  </Accordion>

  <Accordion title="Wiskundige functies">
    | Functie   | Beschrijving                                | Voorbeeld                                            |
    | --------- | ------------------------------------------- | ---------------------------------------------------- |
    | `round()` | Afronden naar dichtstbijzijnde geheel getal | `round({{product.price}} * 1.21)`                    |
    | `floor()` | Naar beneden afronden                       | `floor({{product.margin_percent}})`                  |
    | `ceil()`  | Naar boven afronden                         | `ceil({{product.weight}} / 0.5) * 0.5`               |
    | `min(,)`  | Kleinste van twee waarden                   | `min({{product.price}}, 99.99)`                      |
    | `max(,)`  | Grootste van twee waarden                   | `max({{product.cost}} * 1.5, 9.99)`                  |
    | `abs()`   | Absolute waarde                             | `abs({{product.price}} - {{product.special_price}})` |
  </Accordion>

  <Accordion title="Tekstfuncties">
    | Functie       | Beschrijving                    | Voorbeeld                                            |
    | ------------- | ------------------------------- | ---------------------------------------------------- |
    | `concat(,)`   | Twee waarden samenvoegen        | `concat({{product.brand}}, " - ", {{product.name}})` |
    | `uppercase()` | Converteren naar HOOFDLETTERS   | `uppercase({{product.sku}})`                         |
    | `lowercase()` | Converteren naar kleine letters | `lowercase({{product.brand}})`                       |
  </Accordion>
</AccordionGroup>

### Een operator als tekst gebruiken

Om een operatorteken als letterlijke tekst weer te geven, zet je er een backslash voor:

```
S\/M\/L     → wordt weergegeven als "S/M/L" (geen deling)
10\% off    → wordt weergegeven als "10% off" (geen modulo)
```

### Voorbeeldformules

**Prijs inclusief btw:**

* Sleutel: `price_incl_vat`
* Formule: `round({{product.price}} * 1.21 * 100) / 100`
* Resultaat: 120.99 → `€146.40`

**Margepercentage (opgemaakt):**

* Sleutel: `margin_display`
* Formule: `round(({{product.price}} - {{product.cost}}) / {{product.price}} * 100)`
* Resultaat: `42%`

**Weergavenaam met SKU:**

* Sleutel: `display_name`
* Formule: `{{product.name}} ({{product.sku}})`
* Resultaat: `Stainless Steel Hex Bolt M10x50 (SS-HB-M1050)`

**Prijs per kilogram:**

* Sleutel: `price_per_kg`
* Formule: `round({{product.price}} / {{product.weight}} * 100) / 100`
* Resultaat: `€15.29/kg`

<Warning>
  Controleer of de velden waarnaar je verwijst waarden hebben. Een leeg veld wordt opgelost als een lege string, en berekeningen op lege waarden worden niet uitgevoerd.
</Warning>

## Kanaalvariabelen

<sub>[Bekijk voorbeelden en use cases →](/nl/workflows/content-logic/channel-variables)</sub>

Kanaalvariabelen hervormen bestaande productcontent voor een specifiek verkoopkanaal. Elke variabele neemt een bronveld en past een of meer regels op volgorde toe.

<Steps>
  <Step title="Open het tabblad Kanalen">
    Ga naar **Instellingen > Content Logic** en klik op **Kanalen**.
  </Step>

  <Step title="Voeg een variabele toe">
    Klik op **Variabele toevoegen**. Voer een label en sleutel in en kies vervolgens het **bronveld** om te transformeren.
  </Step>

  <Step title="Voeg transformatieregels toe">
    Voeg een of meer regels toe. Ze worden op volgorde uitgevoerd: de output van de ene wordt de input voor de volgende.
  </Step>
</Steps>

### Bronvelden

Beschrijving, Korte beschrijving, Productnaam, Metatitel, Metabeschrijving, Kenmerken.

### Transformatieregels

| Regel                | Parameters                          | Wat het doet                                       |
| -------------------- | ----------------------------------- | -------------------------------------------------- |
| **Inkorten**         | Max lengte (standaard: 150)         | Kapt tekst af op een maximum aantal tekens         |
| **HTML verwijderen** | Geen                                | Verwijdert alle HTML-tags, laat platte tekst over  |
| **Sjabloon**         | Sjabloonstring                      | Wikkelt of herformatteert content met een sjabloon |
| **Opsommingstekens** | Max opsommingstekens (standaard: 5) | Zet tekst om in een lijst met opsommingstekens     |

<Tip>
  Plaats je regels in de juiste volgorde. Verwijder eerst HTML, kort dan pas in. Anders kun je midden in een HTML-tag afkappen.
</Tip>

### Voorbeeldkanaalvariabelen

**Amazon korte beschrijving:**

* Bron: Beschrijving
* Regels: HTML verwijderen → Opsommingstekens (max: 5) → Inkorten (500)
* Resultaat: Je volledige HTML-beschrijving wordt een schone samenvatting met 5 opsommingstekens, beperkt tot 500 tekens.

**Google Shopping-titel:**

* Bron: Productnaam
* Regels: Sjabloon (`{{value}} - {{product.brand}} - Buy at {{global.company_name}}`) → Inkorten (150)
* Resultaat: "Stainless Steel Hex Bolt M10x50 - Fischer - Buy at Industrial Supplies BV"

**Marktplaats platte-tekstbeschrijving:**

* Bron: Beschrijving
* Regels: HTML verwijderen → Inkorten (2000)
* Resultaat: Volledige beschrijving met opmaak verwijderd, beperkt tot 2000 tekens.

## Conditionele blokken

<sub>[Bekijk voorbeelden en use cases →](/nl/workflows/content-logic/conditional-blocks)</sub>

Conditionele blokken tonen verschillende content op basis van productdata. Ze werken als als/anders-statements voor je content.

<Steps>
  <Step title="Maak een blok aan">
    Klik op het tabblad **Conditioneel** op **Blok toevoegen**. Geef het een naam en sleutel.
  </Step>

  <Step title="Definieer voorwaarden">
    Kies een productveld, kies een operator en voer een waarde in. Voeg meer voorwaarden toe en combineer ze met **EN** of **OF**.
  </Step>

  <Step title="Schrijf content voor elke tak">
    Voer de content in voor wanneer aan de voorwaarden is voldaan (**dan**). Voeg optionele **anders als**-takken toe voor andere gevallen, en een optionele **anders** voor de terugval.
  </Step>
</Steps>

### Conditie-operators

Voorwaarden kunnen verwijzen naar elk productveld, aangepast attribuut of datum/tijdvariabele. De veldselector groepeert ze per categorie (Productidentiteit, Content, Prijzen, Fysieke eigenschappen, Voorraad, Verzending, Status, Datum & Tijd) en bevat je aangepaste attributen.

| Operator                | Beschrijving                        | Waarde nodig? |
| ----------------------- | ----------------------------------- | ------------- |
| `equals`                | Exacte overeenkomst                 | Ja            |
| `not_equals`            | Niet gelijk aan                     | Ja            |
| `contains`              | Bevat substring                     | Ja            |
| `not_contains`          | Bevat niet                          | Ja            |
| `starts_with`           | String begint met                   | Ja            |
| `ends_with`             | String eindigt met                  | Ja            |
| `greater_than`          | Numeriek groter dan                 | Ja            |
| `less_than`             | Numeriek kleiner dan                | Ja            |
| `greater_than_or_equal` | Groter dan of gelijk aan            | Ja            |
| `less_than_or_equal`    | Kleiner dan of gelijk aan           | Ja            |
| `in_list`               | Waarde is een van (kommagescheiden) | Ja            |
| `is_empty`              | Veld heeft geen waarde              | Nee           |
| `is_not_empty`          | Veld heeft een waarde               | Nee           |
| `is_true`               | Boolean is waar                     | Nee           |
| `is_false`              | Boolean is onwaar                   | Nee           |

### Voorbeelden van conditionele blokken

**Gratis verzendbanner:**

* Sleutel: `free_shipping`
* ALS `product.price` groter dan `50` → `Gratis verzending inbegrepen.`
* ANDERS → `Verzendkosten berekend bij het afrekenen.`

**Voorraadurgentiebericht:**

* Sleutel: `stock_message`
* ALS `product.stock_quantity` kleiner dan `5` EN `product.stock_status` is gelijk aan `in_stock` → `Nog maar {{product.stock_quantity}} op voorraad, bestel snel.`
* ANDERS ALS `product.stock_status` is gelijk aan `out_of_stock` → `Momenteel niet op voorraad. {{global.restock_text}}`
* ANDERS → `Op voorraad en klaar om te verzenden.`

**Seizoenspromotie:**

* Sleutel: `seasonal_promo`
* ALS `current.season` is gelijk aan `Winter` → `Winteruitverkoop: bespaar {{product.savings_percent}}% vandaag.`
* ANDERS ALS `current.season` is gelijk aan `Summer` → `Zomeropruiming: {{product.savings_percent}}% korting.`
* ANDERS → *(leeg, geen promotie buiten verkoopseizoenen)*

**B2B levertijd per categorie:**

* Sleutel: `lead_time`
* ALS `product.category` in\_list `Custom Orders, Made to Order` → `Levertijd: 4–6 weken. Neem contact met ons op voor spoedopties.`
* ANDERS ALS `product.stock_quantity` groter dan `0` → `Op voorraad. {{global.lead_time_text}}`
* ANDERS → `Beschikbaar als nabestelling. {{global.backorder_lead_time}}`

**Waarschuwing gevaarlijke stoffen:**

* Sleutel: `hazmat_notice`
* ALS `product.is_dangerous_good` is\_true → `⚠ Gevaarlijk materiaal. Speciale verzendrestricties van toepassing. {{brand.hazmat_handling}}`
* ANDERS → *(leeg)*

## Waar je variabelen kunt gebruiken

Eenmaal gedefinieerd, kun je Content Logic-variabelen verwijzen in:

* **[Bulkbewerking](/nl/essentials/bulk-editing)**: gebruik variabelen in [Zoeken en vervangen](/nl/essentials/bulk-editing/find-replace), [Toevoegen/Voorvoegen](/nl/essentials/bulk-editing/append-prepend) en [Veldwaarde instellen](/nl/essentials/bulk-editing/set-field) om content op schaal te genereren
* **[AI-verrijking](/nl/essentials/enriching-products) prompts**: voeg productcontext, merkrichtlijnen en categorie-instructies toe aan je prompts
* **[Exportsjablonen](/nl/settings/templates)**: maak output op voor verschillende kanalen en platforms
* **[Automatiseringen](/nl/automations/overview)**: verwijs naar variabelen in acties die content genereren of aanpassen

## Je wijzigingen opslaan

Content Logic detecteert wanneer je een wijziging maakt. Een **opslaanbalk** verschijnt onderaan de pagina:

* Klik op **Opslaan** om je wijzigingen te behouden.
* Klik op **Ongedaan maken** om terug te keren naar de laatst opgeslagen status.

Instellingen worden opgeslagen op projectniveau. Elk teamlid met projecttoegang deelt dezelfde variabeledefinities.

## Best practices

<CardGroup cols={2}>
  <Card title="Begin met Globaal" icon="globe">
    Begin met globale variabelen voor gedeelde waarden zoals bedrijfsnaam, verzendbeleid en contactinfo. Ze zijn snel in te stellen en direct bruikbaar.
  </Card>

  <Card title="Gebruik beschrijvende sleutels" icon="tag">
    Geef variabelen duidelijke namen: `warranty_text`, niet `var1`. Je verwijst overal naar deze sleutels, dus houd ze leesbaar.
  </Card>

  <Card title="Test met echte producten" icon="flask-conical">
    Controleer een blok of formule na het aanmaken tegen verschillende producten. Gebruik het live voorbeeld om problemen vroeg op te sporen.
  </Card>

  <Card title="Combineer je scopes" icon="layers">
    Combineer scopes in één formule: globale variabelen voor gedeelde tekst, merkvariabelen voor fabrikantdetails, categorievariabelen voor producttype-details.
  </Card>
</CardGroup>

## Gerelateerd

<CardGroup cols={2}>
  <Card title="Bulkbewerking" icon="layers" href="/nl/essentials/bulk-editing">
    Pas variabelen in één keer toe op veel producten met bulkacties.
  </Card>

  <Card title="Producten verrijken" icon="sparkles" href="/nl/essentials/enriching-products">
    Injecteer variabelen in AI-prompts voor rijkere, merkgetrouwe content.
  </Card>

  <Card title="Exportsjablonen" icon="file-output" href="/nl/settings/templates">
    Maak kanaalklare output op met je Content Logic-variabelen.
  </Card>

  <Card title="Automatiseringen" icon="workflow" href="/nl/automations/overview">
    Verwijs naar variabelen in automatische acties die content genereren.
  </Card>
</CardGroup>
