Exigences
Utiliser l’attribut data-onesignal-unique-label pour le suivi des clics
Tous les éléments cliquables doivent avoir un attribut data-onesignal-unique-label avec une valeur unique. Cela permet à OneSignal de :
- Suivre les analyses de clics
- Déclencher correctement les actions associées
HTML
Attacher des écouteurs d’événements
Vous devez explicitement attacher des écouteurs d’événements JavaScript pour déclencher les actions de messages intégrés OneSignal.JavaScript
HTML
Gestion du suivi des clics dans les messages intégrés HTML en bac à sable
Étant donné que les messages intégrés HTML s’exécutent dans une WebView en bac à sable, le suivi des clics et la navigation doivent se produire dans le même cadre. Les ancres standard (<a href="...">) et les appels window.open() ne sont pas suivis et peuvent déclencher des avertissements de console tels que :
Correct : utiliser un bouton et les API OneSignal
HTML
Incorrect : utiliser <a> ou window.open()
HTML
- Chaque élément cliquable doit avoir un
data-onesignal-unique-labelunique. - Appelez toujours
OneSignalIamApi.trackClick(e)avantopenUrl()ou toute autre méthode de l’API OneSignal. - Liez les écouteurs d’événements après
DOMContentLoadedpour vous assurer que les éléments existent. - OneSignal suit automatiquement les clics uniquement pour les méthodes listées dans cette référence ; toute navigation personnalisée doit appeler
trackClick()manuellement.
Problèmes courants
-
Clics non enregistrés :
trackClick()n’a pas été appelé ou l’élément manque undata-onesignal-unique-label.- Appelez
trackClick(e)et assurez-vous que chaque élément a un label unique.
- Appelez
-
La console affiche “Attempting to perform subframe navigation” :
Le code utilise
window.open()ou un lien<a>au lieu deOneSignalIamApi.openUrl().- Utilisez
OneSignalIamApi.openUrl(e, "https://example.com/")dans le même gestionnaire de clic.
- Utilisez
-
Le mauvais label apparaît dans les analyses :
Plusieurs éléments partagent le même
data-onesignal-unique-label.- Donnez à chaque élément cliquable un label unique.
Fonctions disponibles
Toutes les actions de clic de l’éditeur de blocs sont également disponibles pour les messages intégrés HTML.Invite de permission push
Affiche l’invite de permission de notification push native. Les événements de clic sont automatiquement suivis. Voir Inviter aux permissions push.HTML
Invite de permission de localisation
Affiche l’invite de permission de localisation native. Les événements de clic sont automatiquement suivis. Voir Invites de permission de localisation.HTML
Fermer le message intégré
Ferme le message intégré actuel. Les événements de clic sont automatiquement suivis.html
Taguer l’utilisateur
Définit un tag. Les événements de clic sont automatiquement suivis.HTML
Ouvrir une URL
Ouvre une URL dans le navigateur de l’appareil et ferme le message intégré. Les événements de clic sont automatiquement suivis. Prend en charge les liens profonds.HTML
Nom de clic
Attribue un nom de clic qui peut être lu dans l’écouteur de clic de message intégré. Les événements de clic sont automatiquement suivis. Prend en charge les liens profonds.HTML
Suivre le clic
Suit un événement de clic lorsque vous n’utilisez pas d’autres méthodes d’API cliquables.html
Envoyer un résultat
Suit un résultat personnalisé non attribué et définit un tag sur l’utilisateur au formatnom du résultat : true. Les événements de clic sont automatiquement suivis.
html
Personnalisation des messages intégrés HTML
Vous pouvez utiliser la substitution de tags dans les messages intégrés HTML tout comme dans l’éditeur de blocs. La substitution de tags fonctionne pour :-
Texte en ligne (
<h1>,<p>,<li>, etc.) -
Règles
<style>:CSS -
Attributs avec des URL :
hrefsrc<form action><object data>
Utilisation des tags dans openUrl() et addClickName()
Étant donné que les balises <script> ne prennent pas en charge la substitution, utilisez l’une de ces méthodes :
1. Accéder à tous les tags avec liquidPlayerTags
Cet objet global devient disponible après DOMContentLoaded.
HTML
href
HTML
Prochaines étapes
- En savoir plus sur l’utilisation de la syntaxe liquid pour la substitution de tags
- Explorer les liens profonds pour la gestion des URL
- Concevoir des messages intégrés avec HTML