Afficher ou masquer du contenu avec des conditions
SecureMailMerge utilise la templating Liquid, tu peux donc entourer des blocs de ton sujet ou corps avec les balises {% if %} … {% endif %} pour les afficher ou les cacher en fonction des valeurs des colonnes d’un destinataire. Combine les conditions avec des opérateurs de comparaison, des branches else/elsif, et le mot-clé contains pour un contrôle total.
Contents
- Basic if / endif
- La casse, les espaces et les guillemets typographiques n’ont pas d’importance
- Ajouter une branche else
- Plusieurs branches avec elsif
- Opérateurs de comparaison
- Combiner des conditions avec and / or
- Vérifier si une cellule contient une valeur
- Noms de colonnes avec espaces
- Correspondance d’une partie d’une valeur avec contains
- Inverser une condition avec unless
- Choisir une valeur parmi plusieurs avec case / when
- Conseils
SecureMailMerge personnalise tes emails avec la mise en forme Liquid. En plus des jetons simples comme {{FirstName}}, tu peux utiliser des conditions pour afficher, masquer ou modifier des blocs de contenu en fonction des données de chaque destinataire.
Les conditions fonctionnent à la fois dans la subject line (ligne d’objet) et le email body (corps de l’email).
Basic if / endif
Entoure le contenu que tu veux rendre optionnel entre une balise d’ouverture {% if %} et une balise de fermeture {% endif %}. La condition est vérifiée par rapport à la valeur dans la colonne nommée pour chaque destinataire.
{% if Country == "Germany" %}
Versand erfolgt aus unserem Lager in Berlin.
{% endif %}
Le bloc est inclus uniquement pour les destinataires dont la colonne Country est égale à Germany. Tous les autres ne voient rien à sa place.
Les valeurs de type chaîne doivent être entourées de guillemets ("Germany" ou 'Germany'). Les nombres s’écrivent sans guillemets.
La casse, les espaces et les guillemets typographiques n’ont pas d’importance
Les conditions sont tolérantes, donc de petites différences entre ton modèle et ta feuille de calcul ne vont pas empêcher une condition de correspondre :
- Les noms de colonnes ne tiennent pas compte de la casse.
{% if new == "TRUE" %}correspond à une colonne intituléeNew,NEWounew. Tu n’as pas besoin de respecter la casse exacte de ton en-tête. - Les comparaisons de texte ignorent la casse et les espaces autour. Une condition comme
{% if New == "TRUE" %}correspond à une cellule contenantTRUE,trueou mêmeTrue. Les valeurs sont comparées sans tenir compte de la casse ni des espaces au début ou à la fin. - Les guillemets droits et typographiques sont traités de la même façon. Si ton éditeur convertit automatiquement tes guillemets droits (
"TRUE") en guillemets typographiques « intelligents » (“TRUE”), la condition fonctionne quand même.
{% if new == "TRUE" %}
Welcome aboard! Here's what to do first.
{% endif %}
L’exemple ci-dessus correspond que ta colonne s’appelle New ou new, et que la cellule contienne TRUE, true ou True.
Ajouter une branche else
Utilise {% else %} pour fournir un contenu alternatif lorsque la condition est fausse.
{% if Plan == "Premium" %}
Thanks for being a Premium customer, your priority support line is +1 555 0100.
{% else %}
Need a hand? Reply to this email and we'll help out.
{% endif %}
Plusieurs branches avec elsif
Enchaîne plusieurs conditions avec {% elsif %}. La première branche correspondante gagne.
{% if Tier == "Gold" %}
You've unlocked our Gold benefits.
{% elsif Tier == "Silver" %}
You're on the Silver plan.
{% else %}
Welcome aboard!
{% endif %}
Opérateurs de comparaison
Tu peux comparer les valeurs des colonnes avec n’importe lequel de ces opérateurs :
| Operator | Signification |
|---|---|
== | égal à |
!= | différent de |
> | supérieur à |
< | inférieur à |
>= | supérieur ou égal à |
<= | inférieur ou égal à |
{% if OrderTotal >= 100 %}
You qualify for free shipping!
{% endif %}
Combiner des conditions avec and / or
Utilise and et or pour tester plusieurs colonnes en même temps.
{% if Country == "USA" and Plan == "Premium" %}
Your US Premium perks are active.
{% endif %}
Vérifier si une cellule contient une valeur
Dans Liquid, une cellule vide est toujours “truthy”, donc {% if Notes %} n’est pas une méthode fiable pour vérifier la présence d’une valeur. Utilise plutôt blank, qui correspond aux cellules vides et aux cellules ne contenant que des espaces :
{% if Notes != blank %}
A note from your account manager: {{Notes}}
{% endif %}
Pour faire l’inverse, afficher le contenu uniquement lorsque la cellule est vide, inverse la comparaison :
{% if PhoneNumber == blank %}
We don't have a phone number on file. Reply to add one.
{% endif %}
Noms de colonnes avec espaces
Si l’en-tête de ta colonne contient des espaces (ou d’autres caractères spéciaux), référence-le avec la notation entre crochets, de la même manière que tu le ferais dans un token normal :
{% if ["Account Status"] == "Active" %}
Your account is in good standing.
{% endif %}
Pour les tokens de fusion simples (en dehors d’une condition), tu peux maintenant aussi écrire directement un en-tête qui contient des espaces, sans les crochets : {{ First Name }} fonctionne de la même façon que {{ ["First Name"] }}.
Correspondance d’une partie d’une valeur avec contains
contains vérifie si une valeur texte inclut une sous-chaîne.
{% if Email contains "@gmail.com" %}
Tip: add us to your Gmail contacts so we don't land in Promotions.
{% endif %}
Inverser une condition avec unless
{% unless %} est l’opposé de {% if %}, le bloc s’affiche uniquement lorsque la condition est fausse.
{% unless Country == "USA" %}
International shipping rates apply.
{% endunless %}
Choisir une valeur parmi plusieurs avec case / when
Quand tu as besoin de basculer entre plusieurs valeurs fixes, {% case %} est plus propre qu’une longue chaîne elsif.
{% case Language %}
{% when "de" %}
Vielen Dank für Ihre Bestellung!
{% when "fr" %}
Merci pour votre commande !
{% else %}
Thank you for your order!
{% endcase %}
Conseils
- Les conditions peuvent englober n’importe quel contenu, texte, liens, images, ou même d’autres tokens.
- Les espaces et les sauts de ligne à l’intérieur des blocs
{% if %}sont conservés, donc place tes balises avec soin pour éviter des lignes vides dans l’email final. - Tu peux combiner les conditions avec le filtre default value pour un texte de secours, et avec la date formatting pour les dates.
- Ferme toujours chaque balise :
{% if %}nécessite{% endif %},{% unless %}nécessite{% endunless %}, et{% case %}nécessite{% endcase %}. Une balise fermante manquante provoque une liquid syntax error.
Ready to try it yourself?
SecureMailMerge for Outlook
Runs inside Outlook — no external app needed. Free to install.
Free · No credit card required