# Conditions d'affichage

<Callout type="caution" title="Les conditions d'affichage fonctionnent uniquement avec des attributs, pas des étiquettes">
Les rangées conditionnelles sont pilotées par des **attributs de contact** (champs personnalisés), jamais par des **étiquettes** ni des centres d'intérêt. Pour afficher ou masquer une rangée pour certains contacts, vous devez d'abord créer un **attribut**, renseigner ses valeurs sur vos contacts, puis bâtir votre condition sur cet attribut. Une condition écrite sur une étiquette **ne fonctionnera pas**.
</Callout>

## Ce que ça fait

Une condition d'affichage montre ou masque une **rangée** de votre email selon les données que vous détenez sur chaque contact. Le contenu est choisi par destinataire à partir d'un **attribut de contact**, par exemple un attribut `language`, `country` ou `plan`, de sorte que chaque personne voit la rangée qui lui correspond. C'est ce qui rend un email personnalisé.

## Pourquoi c'est important

Le contenu personnalisé augmente l'engagement : les gens interagissent davantage avec un message qui leur parle. Montrer la bonne rangée au bon contact (et masquer le reste) noue des relations plus solides et de meilleurs résultats, sans envoyer une campagne distincte à chaque segment.

## Avant de commencer : créez votre attribut

Comme les conditions d'affichage lisent **uniquement des attributs**, configurez d'abord l'attribut :

<Stepper>

1. Créez l'**attribut** sur votre liste de contacts. Consultez [ajouter des attributs à votre liste](/fr/docs/audience/adding-attributes-to-your-list).

2. Assurez-vous que vos contacts ont une **valeur** dans cet attribut (par exemple, `language` = `en_US`). Un contact sans valeur ne correspondra à aucune condition.

</Stepper>

<Callout type="note" title="Les étiquettes et centres d'intérêt ne fonctionnent pas ici">
Si votre liste ne sépare les gens qu'avec des **étiquettes** ou des **centres d'intérêt**, une condition d'affichage ne peut pas les lire. Transformez d'abord la distinction dont vous avez besoin en **attribut**, puis créez la condition sur cet attribut.
</Callout>

## Ajouter une condition d'affichage à une rangée

<Stepper>

1. Ouvrez la campagne dans l'éditeur d'emails.

2. Dans la section **Rows**, faites glisser une rangée dans votre contenu et sélectionnez-la.

3. Dans les propriétés de la rangée, sélectionnez **Add Condition (Ajouter une condition)**. La fenêtre **Edit display condition (Modifier la condition d'affichage)** s'ouvre.

4. Remplissez la condition (voir **Écrire la condition** ci-dessous), puis cliquez sur **Save (Enregistrer)**.

5. Prévisualisez-la avec l'icône en forme d'**œil**, et choisissez une valeur d'attribut en mode Aperçu pour voir la rangée s'afficher ou se masquer.

</Stepper>

La condition enregistrée apparaît dans le menu des propriétés de la rangée.

## Écrire la condition

La fenêtre **Edit display condition** comporte quatre champs :

- **Name (Nom)** : un court libellé pour vous, par exemple *English*.
- **Description** : une note facultative sur ce que fait la condition.
- **Before (Avant)** : la balise d'ouverture qui démarre la condition. C'est là que vous référencez l'**attribut** et la ou les valeurs à faire correspondre.
- **After (Après)** : la balise de fermeture, toujours `[ENDIF]`.

Vous écrivez la condition sous forme de code. Référencez l'attribut par son nom entre accents graves, comparez-le avec `=`, mettez les valeurs texte entre guillemets doubles, et combinez plusieurs valeurs avec `OR` (ou restreignez avec `AND`).

**Exemple :** afficher une rangée uniquement aux contacts dont l'attribut `language` vaut `en_US` ou `en`.

```text
Before :  [IF `language` = "en_US" OR `language` = "en" ]
After  :  [ENDIF]
```

Tout ce qui se trouve dans la rangée entre les balises **Before** et **After** n'est affiché que lorsque la condition est vraie. Pour les contacts qui ne correspondent pas, la rangée est masquée ; ajoutez donc une rangée distincte (ou une autre condition) avec un contenu de repli s'ils doivent tout de même voir quelque chose.

## Dépannage

**Ma condition sur une étiquette ou un centre d'intérêt ne fait rien**

- C'est normal. Les conditions d'affichage lisent **uniquement des attributs**. Créez un attribut qui contient la valeur dont vous avez besoin, renseignez-le sur vos contacts, et créez la condition sur cet attribut.

**La rangée est masquée pour tout le monde**

- Vérifiez que vos contacts ont bien une **valeur** dans l'attribut, et qu'elle correspond exactement à la condition (`en_US` n'est pas la même chose que `EN_US` ni que `en`).
- Confirmez que le nom de l'attribut dans la balise **Before** correspond exactement au nom de l'attribut sur votre liste, entre accents graves.

**La rangée s'affiche pour les mauvais contacts**

- Revoyez votre logique : `OR` élargit la correspondance, `AND` la restreint.
- Assurez-vous que la valeur entre guillemets correspond à ce qui est enregistré sur le contact.

**Certains contacts voient un espace vide**

- Une rangée masquée ne laisse rien à la place. Prévoyez un contenu de repli dans une rangée distincte pour les contacts qui ne correspondent pas à la condition.

## Articles connexes

- [Ajouter des attributs à votre liste](/fr/docs/audience/adding-attributes-to-your-list) - Créer les champs que les conditions lisent
- [Utiliser le contenu dynamique](/fr/docs/personalization/using-dynamic-content) - Plus de contenu conditionnel
- [Ajouter des balises de fusion à une campagne](/fr/docs/personalization/adding-merge-tags-to-a-campaign) - Insérer des valeurs d'attribut en ligne
- [Créer des segments dynamiques](/fr/docs/audience/creating-dynamic-segments) - Cibler par attribut
