Vous apprendrez
Découvrez toutes les conditions disponibles que vous pouvez utiliser pour afficher dynamiquement un bloc, une section ou un élément de contenu codé sur mesure dans un modèle d'e-mail uniquement pour certains destinataires. Pour savoir comment utiliser ces conditions dans vos modèles, consultez la rubrique Comment afficher ou masquer des blocs de modèle en fonction de variables dynamiques.
Apprenez à utiliser la logique conditionnelle :
- Où vous pouvez utiliser les conditions
- Conseils pour réussir
- Structures de l'état
- Construire des conditions complexes
Où vous pouvez utiliser les conditions
Vous pouvez utiliser des conditions :
- Dans la logique show/hide, pour afficher dynamiquement le modèle de courrier électronique en bloc ou par sections uniquement à certains destinataires.
- Si vous préférez ne pas écrire de code, utilisez plutôt le générateur de logique d'affichage et de masquage.
- Utilisez les conditionnels if/else pour écrire des déclarations Django personnalisées.
Conseils pour réussir
Lors de l'élaboration des conditions d'affichage et de masquage, prêtez attention aux détails. Les conditions d'affichage et de masquage sont sensibles à la casse et l'orthographe doit correspondre exactement aux données de votre profil ou de l'événement.
Veillez également à prendre en compte tous les destinataires possibles de votre courrier électronique. Par exemple, si vous ne présentez un bloc spécifique qu'aux résidents d'un certain État, couvrez toutes les orthographes possibles du nom de cet État (par exemple, Massachusetts, massachusetts, mass, MA). Tenez également compte des profils qui n'ont peut-être pas du tout défini la propriété.
Une fois le message élaboré et les conditions appliquées, prévisualisez l'e-mail à l'aide de différents profils afin de confirmer que le message s'affiche comme vous l'aviez prévu dans tous les scénarios.
Structures de l'étatStructures de l'état
Les conditions doivent comprendre 1 à 3 éléments, en fonction de votre objectif pour le bloc et des données que vous utilisez. La condition doit au moins inclure une variable (par exemple, personne|recherche : "Couleur préférée"). Il peut également inclure une fonction de comparaison, comme = (égal) ou > (supérieur à), ainsi qu'une valeur, qui spécifie une valeur de propriété spécifique à rechercher. En outre, certaines conditions commencent par " not", si vous souhaitez que le bloc n'apparaisse que pour les profils qui ne remplissent pas une condition.
Le tableau ci-dessous contient une liste complète des structures possibles d'une condition d'affichage/de masquage.
Condition de l'échantillon | Montrez le bloc si... | Types de données acceptables |
person|lookup : 'Couleur préférée' |
La propriété |
Tous |
not person|lookup : 'Couleur préférée' |
La propriété |
Tous |
personne|lookup : 'Couleur préférée' == 'vert' |
La propriété |
Texte, nombre |
person|lookup:'Couleur préférée' != 'vert' |
La propriété |
Texte, nombre |
person|lookup:'Age'> 20 |
La propriété |
Nombre |
person|lookup:'Age'>= 20 |
La propriété |
Nombre |
person|lookup:'Age'< 20 |
La propriété |
Nombre |
person|lookup:'Age'<= 20 |
La propriété |
Nombre |
vert" dans person|lookup : "Couleurs préférées |
La propriété La propriété |
Liste, texte |
not 'green' in person|lookup:'Favorite Colors' |
La propriété La propriété |
Liste, texte |
Conditions pour les booléens
Si vous faites référence à des données stockées sous forme de booléen, vous devrez utiliser 1 et 0 plutôt que "true" et "false" dans la définition de votre condition d'affichage/masquage. Ne mettez pas le 1 ou le 0 entre guillemets. Utilisez les exemples de conditions ci-dessous comme modèle.
Condition de l'échantillon | Montrez le bloc si... |
personne|lookup:'VIP' == 1 |
La propriété |
personne|lookup:'VIP' == 0 |
La propriété |
Conditions pour les booléens stockés sous forme de texte
Si vos données vrai/faux sont stockées sous forme de texte et non de booléen, utilisez les exemples de conditions pour les propriétés textuelles ci-dessus. Si vous n'êtes pas sûr, ou si vous faites référence à une propriété qui contient à la fois des booléens et du texte, vous pouvez utiliser ces structures pour couvrir tous les scénarios. Incluez toutes les orthographes et majuscules présentes dans vos données.
Condition de l'échantillon | Montrez le bloc si... |
personne|lookup:'VIP' == 1 ou personne|lookup:'VIP' == 'true' ou personne|lookup:'VIP' == 'True' |
La propriété |
person|lookup:'VIP' == 0 or person|lookup:'VIP' == 'false' or person|lookup:'VIP' == 'False' |
La propriété |
Construire des conditions complexes
Si vous souhaitez que votre bloc s'affiche pour les personnes répondant à plusieurs critères, ou si vous avez un cas d'utilisation complexe, vous pouvez utiliser plusieurs conditions d'affichage/masquage pour un même bloc. Pour ce faire, reliez une série de conditions avec AND ou OR. Par exemple, si vous souhaitez afficher un bloc à toute personne résidant dans le Massachusetts, mais que le Massachusetts est orthographié différemment sur certains profils, vous pouvez utiliser une condition comme celle-ci :
person.location.region == 'Massachusetts' ou person.location.region == 'massachusetts' ou person.location.region == 'mass' ou person.location.region == 'MA'
Si vous ne voulez montrer un bloc qu'aux personnes dont la couleur préférée est le vert et qui sont également des VIP, vous pouvez utiliser une condition comme celle-ci :
person|lookup:'Couleur préférée' == 'vert' and person|lookup:'VIP'== 1
Les instructions conditionnelles et l'éditeur de texte en ligneLes instructions conditionnelles et l'éditeur de texte en ligne
Lorsque vous ajoutez certaines instructions conditionnelles à un bloc de texte, elles peuvent disparaître de l'éditeur de texte en ligne. Le code est toujours présent, il est simplement caché. Pour afficher et modifier les instructions conditionnelles, ouvrez le champ Code source du bloc de texte.
Les balises suivantes ne sont visibles que dans le champ Code source d' un bloc de texte :
- {% for ... %}
- {% endfor %}
- {% if ... %}
- {% elif ... %}
- {% else %}
- {% endif %}
- {% with ... %}
- {% endwith %}