Helpers

Valeur de secours par défaut

L’helper Default Fallback Value est utilisé pour renvoyer une valeur de secours par défaut si un attribut est vide ou nul. Ce mécanisme fonctionne pour les attributs de profil et les événements de parcours.

Syntaxe

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

Dans cet exemple, la valeur there s'affiche si l'attribut firstName de ce profil est vide ou nul.

Conditions

L'helper if est utilisé pour définir un bloc conditionnel.
Si l'évaluation de l'expression renvoie true, le bloc est rendu, sinon il est ignoré.

Syntaxe

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

À la suite de l'helper if, vous pouvez saisir une instruction else pour spécifier un bloc de code à exécuter, si la même condition est false.
L'instruction elseif spécifie une nouvelle condition à tester si la première instruction renvoie false.

Format

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

Exemples

  1. Générer différents liens de boutique en fonction d'expressions conditionnelles

    {%#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. Déterminer l'extension d'adresse e-mail

    {%#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. Ajout d'un lien conditionnel

    L'opération suivante ajoutera un lien vers le site Web 'www.adobe.com/academia' pour les profils avec des adresses e-mail '.edu' uniquement, vers le site Web 'www.adobe.com/org' pour les profils avec des adresses e-mail '.org', et l'URL par défaut 'www.adobe.com/users' pour tous les autres profils :

    {%#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. Contenu conditionnel basé sur l'appartenance à un segment

    {%#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%}
    
  5. Déterminer si un profil est déjà membre

    {%#if profile.segmentMembership.get(segments.`123e4567-e89b-12d3-a456-426614174000`.id)%}
        You're a member!
    {%else%}
        You should be a member! Sign up now!
    {%/if%}
    
REMARQUE

Pour en savoir plus sur la segmentation et le service de segmentation, consultez cette section.

Unless

L'helper unless est utilisé pour définir un bloc conditionnel. Par opposition à l'helper if, si l'évaluation de l'expression renvoie false, le bloc est rendu.

Syntaxe

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

Exemple

Générer du contenu en fonction de l'extension d'adresse e-mail :

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

Each

L'helper each est utilisé pour effectuer une itération sur un tableau.
La syntaxe de l'helper est {{#each ArrayName}} YourContent {{/each}}.
Il est possible de se référer aux éléments individuels du tableau en utilisant le mot-clé this à l'intérieur du bloc. L'index de l'élément du tableau peut être rendu à l'aide de {{@index}}.

Syntaxe

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

Exemple

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

Exemple

Générer une liste de produits que cet utilisateur a dans son panier :

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

With

L'helper with permet de modifier le jeton d'évaluation d'une partie de modèle.

Syntaxe

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

L'helper with est utile pour définir également une variable de raccourci.

Exemple

Utiliser l'option avec pour attribuer un alias aux noms de variables longs par rapport aux noms plus courts :

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

Let

La fonction let permet à une expression d'être stockée en tant que variable et d'être utilisé ultérieurement dans une requête.

Syntaxe

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

Exemple

L'exemple suivant laisse toutes les sommes des totaux des produits avec la transaction en USD lorsque la somme est supérieure à 100 USD et inférieure à 1000 USD.

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

Sur cette page