DocumentazioneJourney OptimizerGuida di Journey Optimizer

Helper

2 ottobre 2024
  • Argomenti:
  • Personalizzazione

Creato per:

  • Esperto
  • Sviluppatore

Valore di fallback predefinito

L'helper Default Fallback Value viene utilizzato per restituire un valore di fallback predefinito se un attributo è vuoto o nullo. Questo meccanismo funziona per gli attributi del profilo e gli eventi di Percorso.

Sintassi

Hello {%=profile.personalEmail.name.firstName ?: "there" %}!

In questo esempio, il valore there viene visualizzato se l'attributo firstName di questo profilo è vuoto o nullo.

Condizioni

L'helper if viene utilizzato per definire un blocco condizionale.
Se la valutazione dell’espressione restituisce true, il blocco viene renderizzato, altrimenti viene saltato.

Sintassi

{%#if contains(profile.personalEmail.address, ".edu")%}
<a href="https://www.adobe.com/academia">Check out this link</a>

Dopo l'helper if, è possibile immettere un'istruzione else per specificare un blocco di codice da eseguire, se la stessa condizione è false.
L'istruzione elseif specificherà una nuova condizione da verificare se la prima istruzione restituisce false.

Formato

{
    {
        {%#if condition1%} element_1
        {%else if condition2%} element_2
        {%else%} default_element
        {%/if%}
    }
}

Esempi

  1. Eseguire il rendering di collegamenti archivio diversi in base alle espressioni condizionali

    {%#if profile.homeAddress.countryCode = "FR"%}
    <a href="https://www.somedomain.com/fr">Consultez notre catalogue</a>
    {%else%}
    <a href="https://www.somedomain.com/en">Checkout our catalogue</a>
    {%/if%}
    
  2. Determinare l'estensione dell'indirizzo di posta elettronica

    {%#if contains(profile.personalEmail.address, ".edu")%}
    <a href="https://www.adobe.com/academia">Checkout our page for Academia personals</a>
    {%else if contains(profile.personalEmail.address, ".org")%}
    <a href="https://www.adobe.com/orgs">Checkout our page for Non Profits</a>
    {%else%}
    <a href="https://www.adobe.com/users">Checkout our page</a>
    {%/if%}
    
  3. Aggiungere un collegamento condizionale

    La seguente operazione aggiungerà un collegamento al sito Web "www.adobe.com/academia'" solo per i profili con indirizzi e-mail "edu", al sito Web "www.adobe.com/org'" per i profili con indirizzi e-mail "org" e all’URL predefinito "www.adobe.com/users'" per tutti gli altri profili:

    {%#if contains(profile.personalEmail.address, ".edu")%}
    <a href="https://www.adobe.com/academia">Checkout our page for Academia personals</a>
    {%else if contains(profile.personalEmail.address, ".org")%}
    <a href="https://www.adobe.com/orgs">Checkout our page for Non Profits</a>
    {%else%}
    <a href="https://www.adobe.com/users">Checkout our page</a>
    {%/if%}
    
  4. Contenuto condizionale basato sull'appartenenza al pubblico

    {%#if profile.segmentMembership.get("ups").get("5fd513d7-d6cf-4ea2-856a-585150041a8b").status = "existing"%}
    Hi! Esteemed gold member. <a href="https://www.somedomain.com/gold">Checkout your exclusive perks </a>
    {%else%} if 'profile.segmentMembership.get("ups").get("5fd513d7-d6cf-4ea2-856a-585150041a8c").status = "existing"'%}
    Hi! Esteemed silver member. <a href="https://www.somedomain.com/silver">Checkout your exclusive perks </a>
    {%/if%}
    
NOTE
Per ulteriori informazioni sui tipi di pubblico e sul servizio di segmentazione, consulta questa sezione.

Unless

L'helper unless viene utilizzato per definire un blocco condizionale. In opposizione all'helper if, se la valutazione dell'espressione restituisce false, viene eseguito il rendering del blocco.

Sintassi

{%#unless unlessCondition%} element_1 {%else%} default_element {%/unless%}

Esempio

Esegui il rendering di alcuni contenuti in base all’estensione dell’indirizzo e-mail:

{%#unless endsWith(profile.personalEmail.address, ".edu")%}
Some Normal Content
{%else%}
Some edu specific content Content
{%/unless%}

Each

L'helper each viene utilizzato per eseguire l'iterazione su un array.
La sintassi dell'helper è {{#each ArrayName}} YourContent {{/each}}
È possibile fare riferimento ai singoli elementi array utilizzando la parola chiave this all'interno del blocco. È possibile eseguire il rendering dell'indice dell'elemento dell'array utilizzando {{@index}}.

Sintassi

{{#each profile.productsInCart}}
    <li>{{this.name}}</li>
{{/each}}

Esempio

{{#each profile.homeAddress.city}}
  {{@index}} : {{this}}<br>
{{/each}}

Esempio

Esegui il rendering di un elenco di prodotti che questo utente ha nel carrello:

{{#each profile.products as |product|}}
    <li>{{product.productName}} {{product.productRating}}</li>
{{/each}}

With

L'helper with viene utilizzato per modificare il token di valutazione della parte modello.

Sintassi

{{#with profile.person.name}}
{{this.firstName}} {{this.lastName}}
{{/with}}

L'helper with è utile anche per definire una variabile di collegamento.

Esempio

Da utilizzare con per l’aliasing di nomi di variabili lunghi a nomi più brevi:

{{#with profile.person.name as |name|}}
 Hi {{name.firstName}} {{name.lastName}}!
 Checkout our trending products for today!
{{/with}}

Let

La funzione let consente di archiviare un'espressione come variabile da utilizzare successivamente in una query.

Sintassi

{% let variable = expression %} {{variable}}

Esempio

L'esempio seguente consente di calcolare la somma totale dei prezzi dei prodotti nel carrello con prezzi compresi tra 100 e 1000.

{% let sum = 0%}
    {{#each profile.productsInCart as |p|}}
        {%#if p.price>100 and p.price<1000%}
            {%let sum = sum + p.price %}
        {%/if%}
    {{/each}}
{{sum}}
recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76