Personalization syntax personalization-syntax
Personalization i Journey Optimizer baseras på den mallsyntax som kallas Handlebars. En fullständig beskrivning av Handlebars syntax finns i HandlebarsJS-dokumentationen.
Den använder en mall och ett indataobjekt för att generera HTML eller andra textformat. Mallar för handtag ser ut som vanlig text med inbäddade handtagsuttryck.
Exempel på enkla uttryck:
{{profile.person.name}}
där:
profile
är ett namnutrymme.person.name
är en token som består av attribut. Attributstrukturen definieras i ett Adobe Experience Platform XDM-schema. Läs mer.
Allmänna syntaxregler general-rules
-
Identifierare kan vara vilket Unicode-tecken som helst utom för följande:
code language-none Whitespace ! " # % & ' ( ) * + , . / ; < = > @ [ \ ] ^ ` { | } ~
-
Syntaxen är skiftlägeskänslig.
-
Orden true, false, null och undefined tillåts bara i den första delen av ett sökvägsuttryck.
-
I Handlebars är värdena som returneras av {{expression}} HTML-escape. Om uttrycket innehåller
&
genereras returnerade HTML-escape-utdata som&
. Om du inte vill att Handlebars ska kringgå ett värde använder du "trippelstreck". -
När det gäller argument för literala funktioner saknar den mallande språkparsern stöd för ett omvänt snedstreck (
\
) av typen unescape. Det här tecknet måste föregås av ett ytterligare omvänt snedstreck (\
). Exempel:{%= regexGroup("abc@xyz.com","@(\\w+)", 1)%}
Tillgängliga namnutrymmen namespaces
-
Profil
Med det här namnutrymmet kan du referera till alla attribut som definieras i profilschemat som beskrivs i dokumentationen för Adobe Experience Platform datamodell (XDM).
Attributen måste definieras i schemat innan de refereras i ett Journey Optimizer-anpassningsblock.
Mer information om hur du återanvänder profilattribut i villkor finns i det här avsnittet.
accordion Exempelreferenser {{profile.person.name.fullName}}
{{profile.person.name.firstName}}
{{profile.person.gender}}
{{profile.personalEmail.address}}
{{profile.mobilePhone.number}}
{{profile.homeAddress.city}}
{{profile.faxPhone.number}}
-
Målgrupp
Mer information om segmenteringstjänsten finns i den här dokumentationen.
-
Erbjudanden
Med det här namnutrymmet kan du referera till befintliga offertbeslut.
Om du vill hänvisa till ett erbjudande måste du deklarera en sökväg med den information som definierar ett erbjudande. Den här sökvägen har följande struktur:
offers.Type.[Placement Id].[Activity Id].Attribute
där:
offers
identifierar sökvägsuttrycket som tillhör namnutrymmet offerType
bestämmer typen av erbjudanderepresentation. Möjliga värden är:image
,html
ochtext
Placement Id
ochActivity Id
är placerings- och aktivitetsidentifierareAttributes
erbjuder specifika attribut som är beroende av erbjudandetypen. Exempel:deliveryUrl
för bilder
Mer information om beslut-API och om offertrepresentationer finns på den här sidan
Alla referenser valideras mot offertschema med en valideringsmekanism som beskrivs i den här sidan
accordion Exempelreferenser -
Plats där bilden finns:
offers.image.[offers:xcore:offer-placement:126f767d74b0da80].[xcore:offer-activity:125e2c6889798fd9].deliveryUrl
-
Mål-URL när du klickar på bilden:
offers.image.[offers:xcore:offer-placement:126f767d74b0da80].[xcore:offer-activity:125e2c6889798fd9].linkUrl
-
Innehåll i det erbjudande som kommer från beslutsmotorn:
offers.text.[offers:xcore:offer-placement:126f767d74b0da80].[xcore:offer-activity:125e2c6889798fd9].content
-
HTML innehåll i erbjudandet som kommer från beslutsmotorn:
offers.html.[offers:xcore:offer-placement:126f767d74b0da80].[xcore:offer-activity:125e2c6889798fd9].content
Hjälpmedel helpers-all
Handtag-hjälpen är en enkel identifierare som kan följas av parametrar. Varje parameter är ett Handlebars-uttryck. Hjälpprogrammen kan nås från alla sammanhang i en mall.
Dessa blockhjälpare identifieras av en #
före hjälpnamnet och kräver en matchande avslutande /
med samma namn.
Blocken är uttryck som har ett blocköppning ({{# }}
) och stängning ({{/}}
).
Mer information om hjälpfunktioner finns i det här avsnittet.
Literala typer literal-types
Adobe Journey Optimizer stöder följande literaltyper:
Exempel:
"prospect"
, "jobs"
, "articles"
Exempel:
-201
, 0
, 412
Obs! Du kan inte komma åt egenskaper direkt för objekt i en array.
Exempel:
[1, 4, 7]
, ["US", "FR"]