Hvad er template scripting?
Notifikationsskabeloner understøtter et scriptsprog kaldet Liquid (drevet af Scriban). Det gør det muligt at inkludere forsendelsesdata, som ikke er tilgængelige som et standard merge tag — såsom brugerdefinerede referencefelter — og tilføje simpel logik som f.eks. "vis kun dette afsnit, hvis en værdi findes."
Du behøver ikke være udvikler for at bruge denne funktion, men det kræver, at du skriver kode direkte i skabeloneditoren.
Hvornår skal jeg bruge scripting?
Brug scripting når:
- Du har brug for et referencefelt, der ikke har et standard merge tag (for eksempel en brugerdefineret ordreference gemt under en specifik reference type)
- Du vil vise eller skjule en sektion afhængigt af, om en værdi er til stede
- Du skal opbygge en brugerdefineret URL ved hjælp af forsendelsesdata
For standardfelter som modtagernavn, ordrenummer eller trackinglink — brug de almindelige merge tags. Scripting er til edge cases.
Hvor tilføjer jeg scripts i editoren
Scripts skal tilføjes inde i en eksisterende indholdsblok — ikke som en separat selvstændig blok. Hvis du tilføjer en scriptblok for sig selv, vil det skabe et tomt hul i din e-mail.
Der er to steder, hvor du typisk tilføjer scripts:
- Inde i en tekstblok — til at vise en værdi som en del af din e-mailtekst
- I en knaps linkfelt — til at opbygge en dynamisk URL
Eksempel 1: Vis et referencefelt i e-mailtekst
Dette eksempel viser, hvordan man viser en brugerdefineret referenceværdi (reference type 7 — modtagerreference) i din e-mail.
- Åbn din template. Gå til Portal > Settings > Notifications > Templates og åbn den skabelon, du vil redigere.
- Klik ind i tekstblokken hvor du vil have værdien vist. Scriptet skal være i samme blok som teksten omkring det — ikke i en separat blok.
Skriv scriptet i starten af blokken. Indsæt følgende helt i begyndelsen af tekstblokken, før andet indhold:
{%- for rf in references -%}{%- if rf.type_id == 7 -%}{%- assign ref_val = rf.value -%}{%- endif -%}{%- endfor -%}
Tilføj derefter din label på næste linje og vis værdien:Receiver reference: {{ ref_val }}Preview skabelonen. Brug Preview-knappen og indtast en stregkode fra en forsendelse, der har en modtagerreference. Bekræft, at værdien vises korrekt.
Hvad hvis referencen er tom for nogle forsendelser?
Tilføj en fallback, så det ikke ser ødelagt ud. Dette skjuler linjen helt, hvis der ikke findes nogen værdi:
{%- for rf in references -%}{%- if rf.type_id == 7 -%}{%- assign ref_val = rf.value -%}{%- endif -%}{%- endfor -%}
{% if ref_val %}Receiver reference: {{ ref_val }}{% endif %}
Eksempel 2: Vis en sektion betinget
Brug dette til kun at vise en tekstblok, når en specifik betingelse er opfyldt — for eksempel kun at vise afhentningsinstruktioner, når en afhentningskode findes.
{% if pickup_code %}
Your pickup code is: {{ pickup_code }}
Please show this code when collecting your parcel.
{% endif %}
Eksempel 3: Dynamisk knap-URL
I stedet for at linke til en fast URL kan du inkludere forsendelsesdata i linket.
- Tilføj en knapblok til din skabelon.
Åbn knappens linkindstillinger og indtast din URL. For simple felter skal du skrive URL’en direkte i linkfeltet:
https://anywebsite.no/?s={{any_number}}
For en referenceværdi i URL’en:{%- for rf in references -%}{%- if rf.type_id == 7 -%}{%- assign ref_val = rf.value -%}{%- endif -%}{%- endfor -%}https://yourwebsite.com/search?ref={{ ref_val }}Bemærk: Hold alt på én linje uden mellemrum mellem scriptet og URL’en.
Almindelige reference type IDs
Referencer identificeres med et type_id-nummer. Erstat 7 i eksemplerne ovenfor med type ID’et for det felt, du har brug for.
| type_id | Felt |
|---|---|
| 1 | Ordrenummer |
| 2 | Yderligere reference |
| 7 | Modtagerreference |
| 8 | Projekt |
| 9 | Besked til transportør |
| 10 | Besked til chauffør |
| 11 | Besked til modtager |
Hvis du ikke er sikker på, hvilket type ID dit felt bruger, kan du tjekke forsendelsen i Shipment Data API eller kontakte nShift support.