Magic editor - skriptování
Jak obalím strukturu, nebo prvek skriptem?
Jak nastavím oslovení podle křestního jména?
Jak nastavím oslovení podle pohlaví?
Jak nastavím oslovení dle pohlaví rozšířené o titul a příjmení?
Jak nastavím oslovení podle příjmení uprostřed textu?
Jak nastavím "Vážený pane Nováku, Vážená paní Nováková"?
Jak nastavím "Milý Romane, Milá Jano"?
Jak nastavím "Dobrý den, Romane | Dobrý den, Jano, | Dobrý den,"?
Jak nastavím skloňování podle pohlaví (vybral, vybrala, vybrali)?
Marketing je především o budování vztahů. A proto je vhodné, pokud je to možné, komunikovat se zákazníky personalizovaně, lidsky. V tomto směru vám může být neocenitelným pomocníkem skriptování, díky kterému dokážete přizpůsobit obsah daného prvku (a tím i celé kampaně) parametrům příjemce.
Základy skriptování
Než začnete používat jednotlivé skripty, je určitě dobré si ukázat, jaká je jejich logika a jak se vlastně skládají jednotlivé části dohromady. Jako příklad poslouží skript, jehož cílem je, aby ověřil, zda má kontakt vyplněno pole oslovení a pokud tomu tak je, aby jej správně doplnil.
Dobrý den, {% if df_salution %}{{ df_salution }}, {% endif %} jak se máte?
V první řadě je potřeba si uvědomit, že obsah umístěný mezi {% if ... %} a {% endif %} se vypíše do šablony, pouze pokud je splněna zadaná podmínka, kdežto text mimo skript je vypsán vždy. To znamená, že pokud splněna není, vypíše se pouze věta Dobrý den, jak se máte?
Rozeberme si vše ještě podrobněji:
Dobrý den, – Jak již bylo řečeno, tento text se vypíše vždy, ať je podmínka splněna nebo ne.
{% if df_salution %} – Každá podmínka vždy začíná na if. Část df_salution je název systémového pole pro oslovení (tato pole naleznete vypsána níže). Dohromady tedy tento zápis znamená, že podmínka bude vyhodnocovat, zda je toto pole u kontaktu vyplněno.
{{ df_salution }} , – Pokud tomu tak je, bude jeho obsah vypsán v tomto místě. Čárka je opět text, který bude vypsán vždy.
{% endif %} – Ukončení podmínky.
jak se máte? – Tento text už není součástí skriptu a bude proto vypsán vždy, ať je podmínka splněna nebo ne.
Pokud je tedy podmínka splněna, může zobrazené oslovení vypadat následovně:
1) Dobrý den, Karle, jak se máte? – Pro kontakt, který se jmenuje Karel (a má tedy v poli Oslovení "Karle").
2) Dobrý den, Jano, jak se máte? – Pro kontakt, který se jmenuje Jana (a má tedy v poli Oslovení "Jano").
V předchozím příkladu jste použili obsah již existujícího pole. Co když však chcete danou větu (a uvedený skript) ještě rozšířit o oslovení milý pane/milá paní, pro které žádné pole neexistuje? V takovém případě se budete řídit polem pohlaví, protože pouze na základě obsahu tohoto pole je možno stanovit, zda budete oslovovat muže nebo ženy. Samozřejmě i nyní musíte počítat s variantou, že dané pole neobsahuje žádný záznam a tomu větu přizpůsobit.
Dobrý den, {% if df_gender == "M" %} milý pane {{ df_salution }}, {% elseif df_gender =="F" %} milá paní {{ df_salution }}, {% else %}{% endif %} jak se máte?
Rozeberme si vše ještě podrobněji:
Dobrý den, – Tento text se vypíše vždy, ať je podmínka splněna nebo ne.
{% if df_gender == "M" %} – Každá podmínka vždycky začíná na if. Část df_gender je název systémového pole pro pohlaví (tato pole naleznete vypsána níže). Část ==“M“ pak určuje konkrétní hodnotu, kterou dané pole musí obsahovat, aby danou podmínku splnilo. Dohromady tedy tento zápis znamená, že podmínka bude vyhodnocovat, zda je toto pole u kontaktu vyplněno a zda obsahuje pohlaví muž (M).
milý pane – Pokud je podmínka splněna, následuje tento text…
{{ df_salution }} , – …a pozdrav, který bude vypsán v tomto místě.
Takto je skript čten v případě, že podmínku splňuje (tedy je jako pohlaví vyplněno muž). Jestliže však podmínku nesplňuje, je celá sekvence přeskočena a přechází se k sekvenci další.
{% elseif df_gender == "F" %} – Nyní podmínka začíná na elseif, protože ji ověřujeme pouze v případě, že není splněna podmínka předchozí. df_gender je opět název systémového pole pro pohlaví (tato pole naleznete vypsána níže). Část ==“F“ pak určuje konkrétní hodnotu, kterou dané pole musí obsahovat, aby danou podmínku splnilo. Dohromady tedy tento zápis znamená, že podmínka bude vyhodnocovat, zda je toto pole u kontaktu vyplněno a zda obsahuje pohlaví žena (F).
milá paní – Pokud je podmínka splněna, následuje tento text…
{{ df_salution }} , – …a pozdrav, který bude vypsán v tomto místě.
A pokud není splněna ani tato podmínka (kontakt nemá v poli pohlaví vyplněno nic), je opět zmíněná sekvence přeskočena.
{% else %} – V jiném případě.
{% endif %} – Konec skriptu.
jak se máte? – Tento text už není součástí skriptu a bude proto vypsán vždy, ať je podmínka splněna nebo ne.
Výsledek tedy může vypadat následovně:
1) Dobrý den, milý pane Karle, jak se máte? – V případě, že má kontakt v systémovém poli uvedeno pohlaví muž a jméno Karel.
2) Dobrý den, milá paní Jano, jak se máte? – V případě, že má kontakt v systémovém poli uvedeno pohlaví žena a jméno Jana.
3) Dobrý den, jak se máte? – V případě, že nemá kontakt v systémovém poli uvedeno žádné pohlaví.
Výchozí (systémová) pole kontaktu
df_id | ID kontaktu ve SmartEmailingu |
df_emailaddress | E-mailová adresa |
df_language | Jazyk kontaktu cs_CZ, sk_SK, en_GB, en_US,pl_PL, de_DE, cs_CZ |
df_created | Datum vytvoření kontaktu RRRR-MM-DD h:m:s |
df_updated | Datum poslední aktualizace kontaktu RRRR-MM-DD h:m:s |
df_domain | Doména e-mailové adresy |
df_name | Jméno |
df_surname | Příjmení |
df_titlesbefore | Tituly před jménem |
df_titlesafter | Tituly za jménem |
df_birthday | Narozeniny RRRR-MM-DD h:m:s |
df_nameday | Svátek RRRR-MM-DD h:m:s |
df_salution | Oslovení |
df_salutionsurname | Oslovení podle příjmení |
df_salutiongender | Oslovení podle pohlaví |
df_company | Firma |
df_street | Ulice |
df_town | Město |
df_country | Země |
df_postalcode | PSČ |
df_notes | Poznámky |
df_phone | Telefon |
df_cellphone | Mobilní telefon |
df_gender | Pohlaví (F - žena, M - muž). Ostatní pohlaví zatím nepodporujeme. |
Vlastní pole kontaktu
Vlastní pole jsou dostupná v proměnných s názvy cf_IDPOLE. Vlastní pole ID 1 je dostupné jako cf_1, vlastní pole ID 321 je dostupné jakocf_321. Vlastní pole složená z několika hodnot (Seznam checkboxů) budou vypsána jako seznam všech hodnot oddělených čárkou.
Vložení skriptu do kampaně
Samotné vložení skriptu do kampaně může proběhnout v Magic editoru dvěma způsoby. Buď je možno vložit skript do prvku text jako jeho součást, nebo skriptem obalit celou strukturu (prvek).
Vložení skriptu jako textu
Pokud potřebujete pomocí skriptu modifikovat text, či vkládat do již vytvořeného textu obsahy polí kontaktu, využijete tuto možnost. Stačí tedy nejdříve do šablony vložit prvek text (1) a poté do něj potřebný skript (2).
V případě výše uvedeného ukázkového skriptu dostanete tento výsledek:
Kontakt má uvedeno jako pohlaví muž a jmenuje se Roman. Pole oslovení tedy obsahuje tvar „Romane“.
Kontakt má uvedeno jako pohlaví žena a jmenuje se Petra. Pole oslovení tedy obsahuje tvar „Petro“.
Kontakt nemá uvedeno pohlaví a tedy ani oslovení. Jak však vidíte, pozdrav i tak dává smysl.
Skripty můžete samozřejmě kombinovat s dalším textem, je také možno mít v jednom textu i více skriptů najednou.
Obalení struktury (prvku) skriptem
Obecně lze pomocí skriptu ovlivnit, jaký obsah se bude kontaktu v kampani zobrazovat, na základě nastavených kritérií. To znamená, že nemusíte skriptování omezovat pouze na text, ale můžete měnit i zobrazování jiných prvků. Tato možnost může být zajímavá například tehdy, pokud chcete zobrazit jiný obsah pro muže (1), ženy (2) či kontakty bez uvedeného pohlaví (3), jako v následujícím příkladu.
Prvek obalíte skriptem tak, že na něj kliknete a na záložce Pokročilé nastavíte začátek skriptu a jeho konec.
U prvního obrázku je podmínkou, že se zobrazí pouze kontaktům, které mají nastaveno jako pohlaví Muž. Skript tedy bude nastaven jako na obrázku níže.
Začátek skriptu: {% if df_gender == "M" %}
Konec skriptu: prázdný
Pokud je podmínka splněna, zobrazí se obrázek určený mužům. Pokud ne, ověříte další možnost, kterou je pohlaví Žena. Kliknete tedy na obrázek určený ženám a opět jej na záložce Pokročilé obalíte skriptem.
Začátek skriptu: {% elseif df_gender == "F" %}
Konec skriptu: prázdný
Třetí možností je, že pohlaví není vůbec vyplněno. V takovém případě přichází na řadu obrázek s univerzální nabídkou, který opět obalíte skriptem.
Protože neexistuje žádná další možnost, kterou by pole Pohlaví mohlo obsahovat, skript na konci zakončíte.
Začátek skriptu: {% else %}
Konec skriptu: {% endif %}
Výsledný e-mail bude tedy po odeslání vypadat jinak pro Romana (muže)...
... jinak pro Petru (ženu)...
... a jinak pro kontakty bez uvedeného pohlaví.
Další příklady skriptování
Níže uvádíme další časté příklady práce se skripty při tvorbě kampaní.
Oslovení jménem
Krásný den, {% if df_salution %}{{ df_salution }},{% endif %}
Vysvětlení: Krásný den, (pokud máme jméno, oslov jménem), pokud ne, oslov jen Krásný den,
Výsledek:
Krásný den, Petro, (žena, Petra).
Krásný den, Romane, (muž, Roman).
Oslovení dle pohlaví
{% if df_gender == "M" %}Milý {% elseif df_gender == "F" %}Milá {% else %}{% endif %} {{ df_salution }}
Výsledek:
Milý (muž).
Milá (žena).
Oslovení dle pohlaví rozšířené o titul a příjmení
Dobrý den {% if df_gender == "M" %}pane doktore {{ df_salutionsurname }}, {% elseif df_gender == "F" %}paní doktorko {{ df_salutionsurname }}, {% else %}{% endif %} jak se máte?
Vysvětlení:
Výsledek:
Dobrý den, pane doktore Nováku, jak se máte? (muž, pan doktor, Novák)
Dobrý den, paní doktorko Nováková, jak se máte? (žena, paní doktorka, Nováková)
Oslovení podle příjmení uprostřed textu
Pokud chcete používat malé písmeno v oslovení Vážená/Vážený (např. uprostřed věty) je třeba skript upravit:
{{df_salutiongender|lower}}
Celý skript tedy může vypadat takto:
Děkujeme, {{df_salutiongender|lower}} {{df_salutionsurname}}, za Váš zájem.
Vysvětlení:
{{df_salutiongender|lower}} – oslovení podle pohlaví s malým v ve slově vážený.
{{df_salutionsurname}} – oslovení podle příjmení.
Výsledek:
Děkujeme, vážený pane, za Váš zájem. (muž)
Děkujeme, vážená paní, za Váš zájem. (žena)
Rozšířené oslovení podle pohlaví
{% if df_gender == "M" %}Vážený pane {% elseif df_gender == "F" %}Vážená paní {% else %}Vážení{% endif %}{{ df_salutionsurname }},
Vysvětlení:
Pokud je muž, oslov Vážený pane, pokud je žena, oslov Vážená paní, pokud nemáme u kontaktu oslovení, oslov Vážení.
Výsledek:
Vážený pane Nováku (muž, Novák).
Vážená paní Nováková (žena, Nováková).
Vážení (bez uvedeného pohlaví).
Ve druhé variantě jednoduše spojíme dohromady oslovení podle pohlaví a oslovení podle příjmení. Pohlaví samotné neřešíme.
{% if df_salutiongender and df_salutionsurname %}{{ df_salutiongender }} {{df_salutionsurname}}{% else %}Vážení{% endif %},
Vysvětlení:
Vážený pane + příjmení, Vážená paní + příjmení (v případě podmínky známého oslovení podle pohlaví a příjmení), Vážení (v případě, že neznáme oslovení podle pohlaví nebo příjmení)
Výsledek:
Vážený pane Nováku (muž, Novák).
Vážená paní Nováková (žena, Nováková).
Vážení (pakliže nemáme pohlaví nebo příjmení).
Milý + mužské jméno, Milá + ženské jméno, Dobrý den (v případě, že jméno uvedeno není)
{% if df_gender == "M" %}Milý {% elseif df_gender == "F" %}Milá {% else %}Dobrý den{% endif %}{{ df_salution }},
Výsledek:
Milý + jméno (muž).
Milá + jméno (žena).
Dobrý den (neznámý/neznámá).
Dobrý den + mužské jméno, dobrý den + ženské jméno, neznámý/á - Dobrý den,
Dobrý den, {% if df_salution %}{{ df_salution }},{% endif %}
Výsledek:
Dobrý den, Karle, (muž, Karel).
Dobrý den, Jano, (žena, Jana).
Dobrý den, (neznámý/neznámá).
Chcete-li mít text rozdělený podle muže/ženy/neuvedeno
Jsem ráda, že jste si {% if df_gender == 'M' %}vybral{% elseif df_gender == 'F' %}vybrala{% else %}vybrali{% endif %} moje služby.
Výsledek:
Jsem ráda, že jste si vybral moje služby (muž).
Jsem ráda, že jste si vybrala moje služby (žena).
Jsem ráda, že jste si vybrali moje služby (neuvedeno).
Jak na tykání / vykání
Samozřejmě lze pomocí skriptování oddělit tykání a vykání konkrétní osobě. V takovém případě si vytvoříme vlastní pole (třeba rozbalovací nabídka), kde bude u kontaktu určeno, zda mu tykáme či vykáme. Následně pak snadno toto pole (v tomto příkladu ID 100) vložíme do skriptu.
Vlastní pole obsahuje Tykat: Zdravím Tě + jméno, Vykat: Zdravím Vás + jméno, Neobsahuje nic: Dobrý den + jméno,
V případě, že je text e-mailu obsáhlý a je v něm oslovení mnohokrát, lze také rozdělit kontakty do dvou seznamů (Tykat/Vykat) a vytvořit dvě rozdílné kampaně. K tomu můžete použít segmentaci nebo podmínku v Automatizaci.
{% if cf_100 == "Tykat" %}Zdravím Tě {% elseif cf_100 == "Vykat" %}Zdravím Vás {% else %}Dobrý den{% endif %}{{ df_salution }},
Výsledek:
Zdravím Tě Karle, (tykání, Karel).
Zdravím Vás Jano, (vykání, Jana).
Dobrý den Petře, (údaj chybí).