Skip to content

Extraire les données du profil utilisateur

Cette page explique comment intégrer les profils utilisateurs dans vos appels au contenu connecté et présente les meilleures pratiques en matière de création de modèles liquides.

Conditions préalables

Si une réponse de contenu connecté contient des champs de profil utilisateur (dans une étiquette de personnalisation Liquid), ces valeurs doivent être définies plus tôt dans le message avec Liquid, avant l’appel de contenu connecté afin de rendre le passback Liquid correctement. De même, l’indicateur :rerender doit être inclus dans la requête. Prenez en compte le fait que l’indicateur :rerender a une profondeur d’un seul niveau, ce qui signifie qu’il ne s’applique pas aux balises de contenu connecté imbriquées.

Le “Liquid Templating” dans les appels au contenu connecté

Pour la personnalisation, Braze extrait les champs de profil utilisateur avant de transmettre ce champ au Liquid. Donc si la réponse du contenu connecté comporte des champs de profil utilisateur, il doit être défini au préalable.

Par exemple, s’il s’agissait de l’appel de Contenu connecté :

1
2
Hi ${first_name},
{% connected_content https://examplewebsite.com :rerender %}

La réponse Contenu connecté est Your language is ${language}. Le contenu affiché dans cet exemple est Hi Jon, your language is.

La langue elle-même ne sera pas modélisée. En effet, Braze doit savoir quels champs récupérer de l’utilisateur avant d’effectuer l’appel de contenu connecté.

${language} Pour que le rendu du passback Liquid soit correct, vous devez inclure l’étiquette Liquid n’importe où dans la requête, comme le montre l’extrait de code suivant. Le préprocesseur Liquid saura qu’il doit obtenir l’attribut « langue » de l’utilisateur pour l’avoir à disposition pour modéliser la réponse.

1
"Hi ${first_name}, {% connected_content https://examplewebsite.com?language=${language} :rerender %}

Bonnes pratiques

Utilisez json_escape avec les étiquettes Liquid qui pourraient casser le format JSON

Lorsque vous utilisez :rerender, ajoutez le filtre json_escape à toutes les étiquettes Liquid qui pourraient potentiellement casser le format JSON. Si vos étiquettes Liquid contiennent des caractères qui ne respectent pas le format JSON, l’intégralité de la réponse au contenu connecté sera interprétée comme du texte et intégrée dans le message, et aucune des variables ne sera enregistrée.

Par exemple, si la propriété d’événement message dans l’exemple ci-dessous contient des caractères susceptibles de casser le format JSON, ajoutez le filtre json_escape comme dans cet exemple :

1
2
3
[{
"message":"{{event_properties.${message} | json_escape}}"
}]
New Stuff!