Introduction
Il est possible d’intégrer des zones de personnalisation en déclarant les noms des champs dans le contenu souhaité (URL, zone de texte, …) sous la forme {{MM:NOM_DE_LA_PERSO}}.
A noter : le nom du champ de personnalisation NOM_DE_LA_PERSO doit être écrit en majuscules.
Il est aussi possible d’intégrer du contenu dynamique directement dans le code en fonction des champs présents dans la cible.
Personnalisation et contenu dynamique
La gestion de différents cas se fait sur le bloc en entier (raw). Ce bloc se présente sous la forme suivante:
<dynamic-content format="raw">
<scenario default="true">
<conditions>
</conditions>
<value>
Bonjour,
</value>
</scenario>
<scenario>
<conditions>
<condition field="MM:CIVILITE" op="is not none"> </condition>
<condition field="MM:LASTNAME" op="is not none" logic="and"> </condition>
</conditions>
<value>
<a href="https://monsite.com" target="_blank" style="text-decoration:none; color:#333333">Bonjour {{MM:CIVILITE}} {{MM:LASTNAME}}, </a>
</value>
</scenario>
<scenario>
<conditions>
<condition field="MM:CIVILITE" op="is none"> </condition>
<condition field="MM:LASTNAME" op="is none" logic="or"> </condition>
</conditions>
<value>
<a href="https://monsite.com" target="_blank" style="text-decoration:none; color:#333333">Bonjour, </a>
</value>
</scenario>
</dynamic-content>
A l’intérieur de ce bloc principal, on définit les différents scénarios via la balise <scenario>. Il est obligatoire de définir un bloc par défaut dans le cas où aucune des conditions des autres scénarios n'est remplie. Pour définir ce scénario par défaut il suffit d’ajouter l’attribut default.
Les scénarios sont définis avec :
- Un bloc <conditions> dans lequel on définit la liste des conditions (<condition>) à remplir pour afficher ce bloc. Chaque condition se base sur un champ de la cible qui doit être préfixé de “MM:” (exemple : field=”MM:LASTNAME”).
- Un bloc <value> dans lequel on retrouve la valeur à afficher si les conditions sont respectées.
Le bloc <conditions> est composé de N blocs <condition> pour N conditions sous cette forme :
<condition field="MM:FIRSTNAME" op="==" value="TEST"></condition>
<condition field="MM:FIRSTNAME" op="==" value="TEST2" logic= "or"></condition>
Les différentes opérations possibles pour les conditions (attribut op=”xx”) sont :
- égal à : ==,
- différent de : !=,
- est null : is none,
- n’est pas null : is not none.
Les différents opérateurs logiques (attribut logic=”xx”) sont :
- AND : logic=”and”,
- OR : logic=”or”.
L’attribut logic ne doit être appliqué qu’à partir du deuxième bloc de condition.
Conclusion
La possibilité d'ajouter des zones de personnalisation et de contenu dynamique dans un fichier HTML ou l'éditeur de code permet d'adapter le message en fonction des caractéristiques spécifiques des destinataires.