Práce s proměnnými v editoru šablon

Jaroslav Bouška Jaroslav Bouška
16. září 2022

Kromě nahrazení základních proměnných o příjemci nabízí Boldem podmíněné vykreslování jednotlivých bloků, procházení struktur (např. zboží v košíku) a umožňuje formátovat výstupy. Níže najdete základní přehled jednotlivých proměnných a jejich použití.

Základní proměnné

ProměnnáPopis
{{ contact.salutation }}Oslovení příjemce. V praxi využijete spíše proměnnou vokativ – viz Skloňování křestních jmen.
{{ contact.company }}Firma příjemce
{{ contact.surname }}Příjmení příjemce
{{ contact.name }}Křestní jméno příjemce
{{ contact.email }}E-mail příjemce
{{ contact.mesto }}Vlastní uživatelský sloupec, který máme v systému zadaný jako mesto (město).
{{ unsubscribeUrl }}Adresa URL pro odhlášení. V případě, že je u kampaně povoleno odhlášení a tato proměnná není v těle e-mailu nalezena, je automaticky doplněn výchozí text pro odhlášení.
{{ webMailUrl }}Adresa URL pro zobrazení e-mailu na webu.
{{ webMailWithHeaderUrl }}Adresa URL pro zobrazení e-mailu na webu. E-mail bude zobrazen na webu včetně položek odesílatele a příjemce.

Skloňování křestních jmen

Boldem umí automaticky skloňovat křestní jména do 5. pádu. Pro generování oslovení se používá proměnná vokativ. Tuto proměnnou použijete tak, že do šablony vložíte následující řetězec:

{{ vokativ contact.name }}

Tento řetězec bude po odeslání zprávy nahrazen křestním jménem příjemce ve správném tvaru pátého pádu. Pokud tedy bude například křestní jméno příjemce Jana, zobrazí se v šabloně Jano. Budete-li chtít příjemce oslovit familiárně slovy Ahoj Jano, použijete v šabloně následující řetězec:

Ahoj {{ vokativ contact.name }},

Pokud budete chtít třeba poděkovat za registraci, použijete následující řetězec:

Děkujeme za registraci, {{ vokativ contact.name }}!

příklad použití personalizace v Boldem – křestní jména

V uvedeném příkladu využíváme dat získaných ze základní proměnné contact.name, tedy křestního jména uvedeného u každého příjemce. Vstupní data můžete získat také z uživatelských sloupců, nebo např. ze souboru JSON zaslaného při odeslání transakčního e-mailu.

Skloňování příjmení

Boldem umí automaticky skloňovat nejen do 5. pádu nejen jména, ale také příjmení. Pro generování oslovení se používá funkce vokativ. Tuto funkci použijete tak, že do šablony vložíte následující řetězec:

{{ vokativ contact.surname }}

Tento řetězec bude po odeslání zprávy nahrazen příjmením příjemce ve správném tvaru pátého pádu. Pokud tedy bude například příjmení příjemce Novák, zobrazí se v šabloně Nováku. Vyskloňovaný tvar příjmení se obvykle nepoužívá samostatně, ale v kombinaci s rozlišením pohlaví. Podrobnosti najdete v následující kapitole.

Skloňování s oslovením podle pohlaví

V celé řadě případů personalizovaného oslovení potřebujete správně vyskloňovat nejen jméno nebo příjmení příjemce, ale také změnit samotné oslovení podle pohlaví příjemce. Jelikož Boldem umožňuje u příjemců evidovat také pohlaví, je použití výsledného řetězce hračka.

V určitých případech se k příjemcům ukládá pohlaví automaticky podle zadaného jména nebo příjmení (např. při ručním vytváření nebo volitelně během hromadného importování). V případě nestandardních jmen se pohlaví automaticky nenastaví a je proto vhodné sporná jména ověřit a doplnit ručně.

Pokud máte u příjemců nastaveno pohlaví, můžete v šabloně místo konkrétního oslovení použít níže uvedený řetězec:

Děkujeme za registraci{{ if contact.sex != null }}{{ if contact.sex == 1 }}, pane {{ end }}{{ if contact.sex == 0 }}, paní {{ end }}{{ vokativ contact.surname }}!{{ else }}!{{ end }}

Tento řetězec je ve skutečnosti skriptovací kód, který vyhodnotí, zda má daný příjemce nastaveno správně pohlaví a podle toho použije oslovení:

  • Pokud je nastaveno pohlaví Muž a příjmení příjemce je Novák, použije se oslovení: Děkujeme za registraci, pane Nováku!
  • Pokud je nastaveno pohlaví Žena a příjmení příjemce je Svobodová, použije se oslovení: Děkujeme za registraci, paní Svobodová!
  • Pokud pohlaví nastaveno není, použije se univerzální oslovení bez příjmení: Děkujeme za registraci!

Textové znění oslovení (vyznačeno v příkladu tučně) si pochopitelně můžete upravit podle svých představ. Doporučujeme si vždy takto použité oslovení důkladně otestovat na malém vzorku testovacích příjemců se všemi variantami (tj. s oběma pohlavími a také na příjemci bez uvedení pohlaví).

příklad použití personalizace v Boldem – příjmení

V uvedeném příkladu využíváme dat získaných ze základních proměnných contact.surname a contact.sex, tedy příjmení a pohlaví uvedeného u každého příjemce. Vstupní data můžete získat také z uživatelských sloupců, nebo např. ze souboru JSON zaslaného při odeslání transakčního e-mailu.

Podmínky

Zápis jednotlivých podmínek je jednoduchý za využití klíčového slova if:

{{ if product.price == 100 }} Expression is true {{ else }} Statement is null or false! {{ end }}

Můžeme využít i variantu s if else:

{{ if product.price > 100 }}
Very expensive
{{ else if  product.price < 100 && product.price > 50 }}
Expensive
{{ else }}
Cheap
{{ end }}

Cykly

Cykly slouží pro průchod a vykreslení jednotlivých prvků z datového pole.

Základní cyklus pro průchod pole produktů

{{ for item in products }} This is the product {{ item.title }} {{ end }}

Pole dat můžeme seřadit podle návzu

{{ for item in products | array.sort "title“ }} This is the product {{ item.title }} {{ end }}

Uvnitř cyklu můžeme získat další data ohledně informací průchodu

{{ for.index }} – vrací index průchodu

{{ for.first }} – vrací true, pokud se jedná o první průchod

{{ for.last }} – vrací true, pokud se jedná o poslední průchod

{{ for.even }} – vrací true, pokud se jedná o sudý průchod

{{ for.odd }} – vrací true, pokud se jedná o lichý průchod

Práce s datem

{{ date.now }} – vypíše aktuální neformátované datum
{{ date.now | date.to_string "%d.%m.%Y" }} – vypíše aktuální datum ve formátu dd.mm.yyyy
{{ date.now | date.to_string "%d.%m.%Y %H:%M" }} – vypíše aktuální datum a čas ve formátu dd.mm.yyyy hh:mm

date.now je možné nahradit libovolnou proměnnou, která obsahuje datum, například datum vytvoření objednávky nebo košíku

Kompletní seznam možných proměnných naleznete na stránce „Práce s datem“

Formátování výstupu

{{ dateVariables | date.to_string "%d. %m. %Y %H:%M" }} – formátování data a času

{{ 5.4329 | math.round 2 }} – zaokrouhlení na 2 desetinná místa

{{ textVariables | string.upcase }} – vrátí zadaný text ve velkých písmenech

{{ textVariables | string.downcase }} – vrátí zadaný text ve malých písmenech

{{ textVariables | string.capitalizewords }} – převede první znak každého slova na velký znak

{{ textVariables | string.base64_encode }} – vrátí zadaný text v proměnné v base64

Generování dat

{{ math.uuid }} – vytvoří nový UUID

{{ math.random 1 100 }} – vrátí náhodné číslo z rozsahu 1 až 100

{{ date.now }} – vrátí aktuální datum

{{ date.now.year }} – vrátí aktuální rok