Messages multilingues
Après avoir ajouté des paramètres régionaux à votre espace de travail, vous pouvez cibler des utilisateurs dans différentes langues au sein d’une seule notification push, d’un e-mail, d’une bannière, d’un message in-app ou d’un Content Block.
Prérequis
| Fonctionnalité | Autorisations utilisateur requises |
|---|---|
| Locales multilingues | Vous devez disposer des autorisations suivantes pour créer et gérer les locales multilingues :
|
Wait, let me re-check the original. The English source uses .reset-td-br-1 .reset-td-br-2 with hyphens, not underscores. Let me preserve those exactly.
| Fonctionnalité | Autorisations utilisateur requises |
|---|---|
| Locales multilingues | Vous devez disposer des autorisations suivantes pour créer et gérer les locales multilingues :
|
| Fonctionnalité | Autorisations utilisateur requises |
|---|---|
| Modèles | Vous avez besoin de ces autorisations pour le type de modèle auquel vous souhaitez ajouter des locales et des traductions :
|
Utiliser les locales
Étape 1 : Configurer les locales
Avant de pouvoir ajouter des traductions à un message, vous devez d’abord créer les locales que vous souhaitez prendre en charge. Les locales définissent les variantes de langue (et éventuellement de région) disponibles pour la communication.
Étape 2 : Marquer le contenu à traduire
Encadrez le texte que vous souhaitez traduire avec les étiquettes Liquid de traduction {% translation your_id_here %} et {% endtranslation %} et attribuez un ID d’étiquette. Les ID d’étiquettes de traduction doivent être uniques au sein d’un message. Envisagez d’utiliser des noms d’ID sémantiques qui décrivent clairement le texte, comme {% translation header %}.
Voici un exemple de message marqué pour la traduction : {% translation greeting %}Hello!{% endtranslation %}

Sélectionnez le texte que vous souhaitez traduire et utilisez le raccourci clavier Cmd + Alt + L (macOS) ou Ctrl + Alt + L (Windows) pour l’encadrer avec des étiquettes de traduction.
Ce raccourci fonctionne dans tous les canaux prenant en charge la communication multilingue, à l’exception des éditeurs par glisser-déposer pour les e-mails et les Content Blocks. Pour ceux-ci, utilisez le bouton Ajouter une personnalisation pour ajouter des étiquettes de traduction.
Localiser les URL
Lors de la traduction du contenu, les URL nécessitent un traitement spécial pour éviter les liens brisés.
URL standard (statiques)
Les URL statiques sont saisies manuellement dans l’éditeur (par exemple, https://example.com). Nous recommandons également ce qui suit :
| Recommandation | Justification |
|---|---|
Conservez le protocole (https://) en dehors des étiquettes de traduction. N’encadrez que le domaine et le chemin (par exemple, example.com/en). |
Les traducteurs peuvent accidentellement modifier ou supprimer des caractères spéciaux, ce qui entraîne des liens brisés. |
N’incluez pas les paramètres de requête dans les étiquettes de traduction (par exemple, ?utm_source=promo). |
Les traducteurs peuvent accidentellement modifier ou supprimer des caractères spéciaux, ce qui entraîne des liens brisés. |
Une URL standard qui suit les deux recommandations est :
1
<a href="https://{% translation id_1 %}example.shop.com{% endtranslation %}">Visit our store</a>
URL générées par Liquid
Si votre URL est générée avec Liquid (par exemple, {% landing_page_url %}), nous recommandons ce qui suit :
| Recommandation | Justification |
|---|---|
| N’encadrez l’URL générée par Liquid dans des étiquettes de traduction que si elle doit être localisée. | La syntaxe Liquid doit être soigneusement préservée pour s’afficher correctement. |
N’incluez pas les paramètres de requête (par exemple, ?utm_source=promo) dans les étiquettes de traduction. |
Les traducteurs peuvent accidentellement modifier ou supprimer des caractères spéciaux, ce qui entraîne des liens brisés. |
Une URL générée par Liquid qui suit les deux recommandations est :
1
<a href="{% translation id_1 %}{% landing_page_url xyz %}{% endtranslation %}">View details</a>

Si vous utilisez le suivi des liens e-mail (aliasing de lien ou modèles de liens), une configuration supplémentaire est requise lorsque les URL sont encadrées par des étiquettes de traduction.
Attributs et structure HTML
N’encadrez que le texte lisible par l’utilisateur dans les étiquettes de traduction. Évitez d’encadrer les attributs HTML (tels que class, style ou id) ou tout autre code structurel. Les attributs HTML contrôlent la mise en page, le style et les fonctionnalités. Les encadrer dans des étiquettes de traduction peut casser le formatage ou les styles dans les versions localisées de votre message.
Ce texte est correctement encadré :
1
2
3
<p class="headline" style="color: red;">
{% translation id_1 %}Welcome to our sale{% endtranslation %}
</p>
Texte incorrectement encadré
Ce texte est incorrectement encadré :
1
2
3
4
5
{% translation id_1 %}
<p class="headline" style="color: red;">
Welcome to our sale
</p>
{% endtranslation %}
Étape 3 : Ajouter des locales à votre message
Après avoir ajouté des étiquettes de traduction à votre message, sélectionnez Gérer les langues dans l’éditeur (Langues dans les éditeurs par glisser-déposer pour les e-mails et les Content Blocks) et sélectionnez au moins une locale pour laquelle vous souhaitez ajouter des traductions.

Content Blocks contenant des traductions
Si votre message contient des Content Blocks qui ont déjà des traductions enregistrées, vous n’avez pas besoin de les télécharger à nouveau. Les traductions enregistrées sont automatiquement appliquées lorsque le Content Block est ajouté à votre message.
Dans la fenêtre modale Gérer les langues, les Content Blocks avec des traductions enregistrées apparaissent dans la liste, aux côtés des locales qu’ils prennent en charge. Cela vous permet de voir quelles parties de votre message sont déjà localisées avant d’ajouter de nouvelles traductions.


Assurez-vous que chaque Content Block inclut des traductions pour chaque locale ajoutée à votre message. Si un Content Block ne dispose pas de traductions pour l’une des locales que vous avez ajoutées, il s’affiche dans sa langue d’origine pour les utilisateurs de cette locale.
Étape 4 : Ajouter des traductions
Après avoir sélectionné les locales, ajoutez des traductions à votre message en utilisant l’une des méthodes suivantes :

Sélectionnez Télécharger le modèle pour télécharger un CSV contenant une matrice de vos ID de traduction et locales sélectionnés.

Pour éviter les problèmes d’affichage avec les caractères non anglais, évitez d’utiliser Excel pour votre CSV de traduction.
Lorsque vous remplissez le modèle, traduisez uniquement le contenu textuel pour chaque locale. Si des étiquettes HTML sont présentes dans le modèle téléchargé, laissez-les inchangées et traduisez uniquement le texte à l’intérieur des étiquettes.
Par exemple, si le modèle contient :
1
<p style="margin:0;margin-bottom:0">A charming bakery dedicated to crafting artisanal breads.</p>
Traduisez uniquement le texte A charming bakery dedicated to crafting artisanal breads. et conservez les étiquettes HTML <p style="margin:0;margin-bottom:0"> et </p> telles quelles.
Ensuite, téléchargez le fichier complété et les traductions seront appliquées à votre message.

Utilisez l’API de traduction d’un partenaire pour gérer et mettre à jour les traductions dans vos Campaigns et Canvas. Cela est utile si vous utilisez un système externe pour la localisation ou si vous souhaitez vous connecter directement à un partenaire de traduction.
Pour utiliser les endpoints de traduction avec les Canvas, incluez les paramètres suivants :
workflow_idstep_idmessage_variation_id

Lorsque vous utilisez l’API de traduction avec des étapes Canvas créées après le lancement du Canvas, le message_variation_id que vous transmettez à l’API sera vide ou blanc.
Étape 5 : Prévisualiser les traductions
Pour prévisualiser votre message, sélectionnez l’option Utilisateur multilingue dans le menu déroulant Prévisualiser en tant qu’utilisateur. Cela vous permet de basculer entre différentes définitions de locale pour prévisualiser toutes les traductions de votre message.

Gérer les traductions
Dupliquer des étapes Canvas ou des Campaigns, et les traductions
Lorsque vous dupliquez une étape Canvas, une Campaign ou une variante, les traductions sont incluses. Cela s’applique également lors de la copie entre espaces de travail, à condition que les paramètres régionaux soient définis dans l’espace de travail de destination. Veillez à vérifier et mettre à jour les traductions en conséquence lorsque vous apportez des modifications à votre Canvas ou Campaign.
Enregistrer les traductions dans les Content Blocks
Les Content Blocks prennent en charge le multilingue de la même manière que les messages. Lors de la création ou de la modification de Content Blocks, vous pouvez étiqueter le contenu pour la traduction, ajouter des paramètres régionaux et télécharger des traductions à l’aide d’un fichier CSV ou de l’API de traduction.
Les traductions enregistrées restent associées au Content Block. Lorsque le bloc est ajouté à un message, ses traductions sont automatiquement incluses.
Messages de droite à gauche
Lorsque vous remplissez le fichier de traduction pour des langues écrites de droite à gauche (comme l’arabe), encadrez la traduction avec span afin qu’elle soit correctement formatée :
1
{% translation your_id_here %}<span dir='rtl'>default text</span>{% endtranslation %}
Suivi des liens dans les e-mails
Dans les Campaigns par e-mail, Braze suit les liens en ajoutant des informations de suivi (paramètres de requête) à chaque URL. Ce comportement prend en charge à la fois l’aliasing de lien et le modèle de lien.
Lorsqu’une URL est encadrée par des balises de traduction, Braze peut ne pas être en mesure de déterminer où ajouter ces informations de suivi. Pour garantir le bon fonctionnement, vous devez inclure un caractère spécial à la fin de l’URL pour indiquer où le suivi doit être ajouté.
Les URL utilisent deux caractères spéciaux pour contrôler ce fonctionnement :
?ajoute le suivi à une URL qui n’en contient pas encore.&ajoute un suivi supplémentaire si un?est déjà présent dans l’URL. Une URL ne peut contenir qu’un seul?.
| URL | Contient ? |
Description | Exemple |
|---|---|---|---|
| URL standard | Non | Ajoutez ? après la balise de traduction fermante si l’URL n’en contient pas déjà un. |
<a href="https://{% translation id_1 %}example.com{% endtranslation %}?">Shop Now</a> |
| URL standard | Oui | Utilisez & à la fin de l’URL (après la balise de traduction fermante) si elle contient déjà ?. |
<a href="https://{% translation id_1 %}example.com{% endtranslation %}?ref=4&">Shop Now</a> |
| Générée par Liquid | Non | Utilisez ? après les balises de traduction fermantes si l’URL générée n’en contient pas déjà un. |
<a href="{% translation id_1 %}{{ product_url }}{% endtranslation %}?">Shop Now</a> |
| Générée par Liquid | Oui | Utilisez & après la balise de traduction fermante si l’URL générée contient déjà un ?. |
<a href="{% translation id_1 %}{% landing_page_url xyz %}{% endtranslation %}&">Shop Now</a> |
Paramètres de langue et accessibilité
Commencez par Langue d’accessibilité dans Accessibilité pour le contexte WCAG, le comportement par canal et éditeur (y compris les pages de destination), et les paramètres d’accessibilité au niveau du message.
Lorsque vous utilisez des messages multilingues, alignez la langue d’accessibilité avec chaque paramètre régional afin que les envois localisés déclarent la langue appropriée.
Configurer la langue d’accessibilité
Vous pouvez définir la langue d’accessibilité à deux niveaux :
Niveau du message
Au niveau du message, définissez la langue d’accessibilité dans la section Accessibilité des paramètres de votre message. Pour sélectionner une langue, utiliser Liquid et connaître les limitations par canal, consultez Langue d’accessibilité.
Niveau du paramètre régional
Pour les messages multilingues, définissez la langue d’accessibilité pour chaque paramètre régional dans les paramètres de localisation. Vous pouvez utiliser {{accessibility_language}} dans la section Accessibilité afin que la langue du document ou de la carte corresponde aux valeurs de ces paramètres régionaux.
L’affichage par défaut de ce jeton pour les nouveaux messages dépend du canal et de l’éditeur. Par exemple, les In-App Messages et les Banners se comportent différemment des pages de destination et des e-mails en glisser-déposer. Consultez Langue d’accessibilité pour plus de détails.
Questions fréquentes
Quelles sont les limites pour les étiquettes de traduction ?
Lorsque vous utilisez des étiquettes de traduction, les limites suivantes s’appliquent :
- Chaque message peut contenir jusqu’à 200 étiquettes de traduction.
- Chaque texte par défaut (le contenu entre les étiquettes de traduction) peut contenir jusqu’à 2 000 caractères.
- Les traductions par locale peuvent contenir jusqu’à 409 600 octets (environ 409,6 Ko).
Pourquoi est-ce que je reçois une erreur lors du téléchargement de modèles d’e-mail multilingues ?
Si vous rencontrez des erreurs lors du téléchargement de modèles d’e-mail multilingues, les étiquettes de traduction encapsulent peut-être des attributs HTML ou du style CSS qui entrent en conflit avec la façon dont Braze traite les corps d’e-mail.
Braze traite le corps HTML et le corps en texte brut comme des composants distincts du même message. Lorsque les étiquettes de traduction incluent des références href et du style CSS, cela peut entraîner des étiquettes conflictuelles qui empêchent le téléchargement correct du modèle.
Pour résoudre ce problème :
- Excluez les références
hrefet le style CSS des étiquettes de traduction. - N’encapsulez que le contenu textuel lisible par l’humain dans les étiquettes de traduction, comme décrit dans Attributs et structure HTML.
- Pour les URL, suivez les instructions dans Localiser les URL.
Puis-je modifier le texte traduit dans l’une de mes locales ?
Oui. Commencez par effectuer la modification dans le CSV, puis téléchargez à nouveau le fichier pour mettre à jour le texte traduit.
Braze fournit-il des traductions ?
Non. Vous devez fournir vos propres traductions soit en téléchargeant un CSV, soit en utilisant l’API de traduction.
Puis-je imbriquer des étiquettes de traduction ?
Non.
Puis-je encapsuler des messages HTML entiers dans une étiquette de traduction ?
Non. En tant que bonne pratique, vous ne devez encapsuler que le texte lisible par l’humain ou le contenu qui doit être localisé. Cela permet d’éviter les problèmes de mise en forme, de liens ou d’autres éléments non textuels.
De plus, envisagez d’encapsuler des portions de texte plus petites et sémantiquement liées pour créer des traductions précises et éviter les limitations de performance ou de taille.
Puis-je modifier le texte traduit dans l’une de mes locales ?
Oui. Si vous utilisez un CSV, commencez par effectuer la modification dans le fichier, puis téléchargez-le à nouveau pour mettre à jour le texte traduit. Si vous utilisez l’API de traduction, utilisez les endpoints de mise à jour pour effectuer les modifications.
Quelles validations ou vérifications supplémentaires Braze effectue-t-il ?
| Scénario | Validation dans Braze |
|---|---|
| Un message contient deux ou plusieurs ID de traduction identiques qui correspondent à des textes différents. | Ce fichier de traduction ne sera pas téléchargé. |
| Un fichier de traduction ne contient pas un ou plusieurs ID d’étiquettes de traduction. | Ce fichier de traduction ne sera pas importé. |
| Un fichier de traduction contient des locales absentes du message. | Ce fichier de traduction ne sera pas importé. |
| Les étiquettes de traduction doivent être ajoutées à un message avant de télécharger le modèle de traduction. | Ce fichier de traduction ne sera pas téléchargé. |
| Des étiquettes de traduction présentes dans votre fichier importé sont absentes de votre message. | Les traductions supplémentaires ne seront pas enregistrées dans le message. |
Un message contient une ou plusieurs étiquettes Liquid incorrectes. Pour ouvrir les étiquettes, utilisez {% translation your_id_here %}, fermez les étiquettes de traduction avec {% endtranslation %}. |
Ce fichier de traduction ne sera pas téléchargé. |
| Un fichier de traduction contient un texte par défaut qui ne correspond pas à celui du message. | Les traductions sont ajoutées, mais le texte original du message n’est pas mis à jour. |
| Une ou plusieurs locales d’un message ont été supprimées dans les paramètres et n’existent plus. | Les traductions déjà ajoutées continuent d’exister dans le message. Si elles sont supprimées du message, les traductions sont perdues. |
| Les étiquettes de traduction contiennent des URL complètes ou des URL générées par Liquid. | Les étiquettes de traduction contenant des URL sont identifiées au cas où des problèmes de liens brisés ou de suivi des liens surviendraient. |
| Les étiquettes de traduction incluent des paramètres de requête. | Les étiquettes de traduction contenant des paramètres de requête sont identifiées au cas où des problèmes de liens brisés ou de suivi des liens surviendraient. |
| Les étiquettes de traduction contiennent des attributs ou des structures HTML. | Les étiquettes de traduction contenant des attributs ou des structures HTML sont identifiées au cas où des problèmes de styles et de mise en forme surviendraient. |