adwire lab

Tracker le rôle de l’utilisateur sur un site WordPress

Un site WordPress peut avoir différentes typologies d'utilisateurs (clients, non-clients, administrateurs...). Découvrez comment intégrer ce rôle à vos rapports afin de rendre votre analyse plus fine.

Ecrit par Antoine Granjon Le 12/08/2024

Comprendre et analyser le comportement de vos utilisateurs est un élément essentiel du marketing digital. Mais bien souvent, les actions générées par les utilisateurs sont analysées comme un ensemble, alors que le trafic est composé de différents types d'utilisateurs (clients, non clients, administrateurs, etc.). Pour ajouter un peu plus de granularité dans les rapports, les solutions de web analytics, dont Google Analytics 4, proposent de créer des “user definitions” personnalisées. Ces propriétés permettent de qualifier chaque utilisateur et donc de rendre vos rapports plus exploitables.

Dans cet article, nous allons nous pencher sur l’ajout d’une “user definition” qui peut s’avérer utile dans de nombreux cas : le rôle qu’a l’utilisateur sur WordPress.

L’idée est d’associer à chaque utilisateur du site son rôle Wordpress. Ainsi, dans nos rapports, nous pourrons isoler les utilisateurs “customers” et ainsi obtenir des rapports spécifiques à l’activité des utilisateurs disposant d’un compte client, ou à l'inverse isoler les utilisateurs non-clients.

Pourquoi tracker le rôle des utilisateurs WordPress ?

Sur Wordpress, différents rôles peuvent être attribués aux visiteurs du site. Ces rôles indiquent si l’utilisateur est un invité (guest), s’il s’agit d’un utilisateur existant et logué, ou encore s’il s’agit d’un administrateur.

En fonction du rôle assigné à l’utilisateur, les événements générés au cours d’une visite vont avoir un impact différent sur les performances du site. Par exemple, si vous avez un événement correspondant à la mise au panier d’un produit, il pourrait être intéressant de savoir si l’action a été réalisée par un client existant, un visiteur, ou un administrateur qui effectue des tests.

Au-delà de cet exemple, tracker le rôle d’un utilisateur Wordpress peut apporter de nombreux avantages :

  • Proportion de clients existants : vous pouvez visualiser la proportion que représentent les utilisateurs logués versus les utilisateurs non logués
  • Attribuer des événements à des clusters (ou groupes d’utilisateurs) : pouvoir attribuer un rôle utilisateur à chaque événement généré sur le site permet de mieux catégoriser ces événements, et de mieux évaluer leur impact sur les performances du site.
  • Création de segments et d’audiences : en assignant un rôle à chaque utilisateur, vous allez pouvoir créer des segments et ainsi isoler une partie de votre trafic pour mieux analyser son comportement. Par ailleurs, il sera également aisé de placer une typologie d’utilisateurs dans une audience spécifique, puis d’exclure les utilisateurs qui deviendraient clients par la suite.
  • Exclusion des administrateurs : les administrateurs peuvent générer de nombreux événements macro sur un site, les exclure de l’analytics permet donc d’avoir des données plus saines et représentatives.

Les différents rôles Wordpress

Nous avons parlé des guests (utilisateurs non logués), des customers (utilisateurs logués dans le cadre d’un e-shop) et des administrateurs. Mais selon la configuration de votre Wordpress, les extensions que vous utilisez et le secteur d’activité dans lequel vous évoluez, d’autres rôles peuvent être présents.

Voici un tour d’horizon des différents rôles Wordpress.

  • Guest (invité) : utilisateur non logué
  • Subscriber (Abonné) : utilisateur inscrit sur le site. Dans le cas d’une utilisation de Woocommerce Subscription, le Subscribers sont des utilisateurs abonnés à un service récurrent.
  • Customer (client) : utilisateur inscrit sur le site via un achat (uniquement dans le cas où Woocommerce est installé).
  • Contributor : utilisateur ayant accès aux fonctionnalités de publication pour ses propres articles.
  • Author : utilisateur ayant accès aux fonctionnalités de publication complètes.
  • Editor : utilisateur ayant accès aux fonctionnalités de publication complètes, à la modération des commentaires ou encore à la gestion des médias.
  • Administrator : rôle le plus élevé sur Wordpress, typiquement le ou les propriétaire(s) du site.
  • Super Administrator : administrateur dans le cas d’un Wordpress mutlisite.

1. Créer les user dimensions dans GA4

En première étape, nous allons créer les “user definitions” dans GA4. Pour cela, rien de plus simple, nous allons aller dans Admin, puis dans “Custom definitions”.

customdef.png

Puis, nous allons cliquer sur le bouton bleu “Create custom dimension”. Ici, nous devrons indiquer plusieurs choses :

customdef2.png

  1. Dimension name : il s’agit du nom de la custom dimension tel qu’il apparaîtra dans les rapports.
  2. Scope : il faut choisir “User” car nous créons bien une custom definition liée à l’utilisateur et non à un événement
  3. User property : c’est la propriété telle qu’elle est transmise dans le Datalayer. Elle ne sera pas disponible car elle n’est jamais remontée jusqu’à maintenant, vous devez donc la taper manuellement.

2. Faire apparaître le rôle de l’utilisateur dans la classe du < body >

Sur WordPress, il existe une classe “logged-in” qui vient s’ajouter aux classes du < body > dès lors que l’utilisateur qui visite le site est loggué. Ainsi, nous pouvons très facilement faire remonter cette information dans GA4 via le DataLayer.

Avant de faire cela, nous allons également ajouter une classe spécifique liée au rôle de l’utilisateur afin de l’avoir aussi dans les classes du < body >.

Pour cela, nous allons nous diriger vers le fichier functions.php du thème WordPress que vous utilisez, puis ajouter ces lignes :

// Fonction pour ajouter la classe du rôle de l'utilisateur au body
function add_role_to_body_class($classes) {
    // Vérifiez si l'utilisateur est connecté
    if (is_user_logged_in()) {
        global $current_user;
        $user_data = get_userdata($current_user->ID);

        if ($user_data) {
            $user_roles = $user_data->roles;

            // Parcourir les rôles de l'utilisateur
            foreach ($user_roles as $role) {
                // Ajouter la classe correspondante au rôle
                $classes[] = 'role-' . $role;
            }
        }
    }
    return $classes;
}
add_filter('body_class', 'add_role_to_body_class');

Désormais, quand un “customer” sera connecté sur le site, une classe “role-customer” sera présente dans la balise < body >.

3. Faire remonter le rôle de l’utilisateur dans le DataLayer

Maintenant que le rôle de l’utilisateur apparaît dans la balise < body >, nous allons créer une fonction Javascript permettant de récupérer cette information et de la transmettre comme une “user definition”.

Dans ce code (utilisant le framework jQuery), nous regardons déjà si l’utilisateur est loggué. Si ce n’est pas le cas, nous assignons le rôle “guest” à l’utilisateur.

Si en revanche il est connecté, nous allons récupérer le classe “role-*” présente dans le body, et ajoutons le rôle aux custom definitions qui sont remontées.

if($('body').hasClass('logged-in')) {
    var user_logged = true;
    var user_role_class = $('body').attr("class").match(/role-[\w-]*\b/);
    var user_role = user_role_class[0].replace('role-', '');
} else {
    var user_logged = false;
    var user_role = 'guest';
}
dataLayer.push({
    "user_logged" : user_logged,
    "user_role" : user_role
});

4. Assigner la user definition à chaque événement page_view

Pour que ces deux user definitions soient assignées à chaque page vue, nous devons les intégrer dans la balise Google Tag Manager qui gère GA4.

Premièrement, rendez-vous sur GTM, puis allez dans “Variables” pour créer ces deux variables :

customdef3.png customdef4.png

Ensuite, rendez-vous sur l’onglet “Balises” et cliquez sur la balise GA4. Dans la partie “Paramètres de configuration”, ajoutez les deux user definitions, comme ceci :

customdef5.png

5. Tester les remontées et utiliser les custom definitions dans les rapports

A présent, les user definitions “user_logged” et “user_role” seront remplies pour chaque utilisateur. Comme toujours sur GA4, il vous faudra patienter car les données ne seront visibles qu’à J+1.

Passé ce délai, plusieurs options s’offrent à vous pour utiliser ces user definitions.

Créer un filtre sur les rapports GA4

Dans n’importe quel rapport GA4, vous avez la possibilité d’ajouter des filtres. Ceux-ci vous permettront de ne conserver qu’un seul type d’utilisateur, ou au contraire de les exclure.

Pour cela, allez dans un rapport GA4, puis cliquez sur “Ajouter un filtre”.

Dans le menu déroulant “Dimension”, séléctionnez “user_role”. Puis choisissez le ou les user_role que vous souhaitez conserver dans votre filtre.

customdef6.png

Créer des audiences

Créer des audiences pour chacun de vos rôles Wordpress peut être un bon moyen de regrouper les clients existants et les non-clients. De cette manière, vos audiences peuvent être utilisées pour du remarketing, tout en excluant bien les utilisateurs clients.

A l’inverse, vous pouvez aussi créer une campagne de remarketing ciblant uniquement les clients de votre site.

Pour créer une audience personnalisée, allez dans Admin puis dans Audiences. Cliquez sur “Nouvelle audience”, puis sur “Créer une nouvelle audience”.

Capture.JPG

Visualiser dans Looker Studio

Pour visualiser la répartition des utilisateurs en fonction de leur rôle, vous pouvez utiliser Google Looker Studio. L’outil vous permettra également de créer des filtres pour isoler certains rôles sur vos rapports.

Pour commencer, allez dans votre rapport Looker Studio. Pour pouvoir utiliser les user defintions récemment ajoutées, vous allez devoir mettre à jour la source de données.

Pour cela, allez dans Ressource > Gérer les nouvelles sources de données.

Sélectionnez la source GA4 en cliquant sur “Modifier”, puis tout en bas, cliquez sur “Actualiser les champs”.

customdef7.png

Les custom definitions “user_logged” et “user_role” sont désormais utilisables dans vos rapports.

A présent, vous pouvez retourner sur votre rapport Looker Studio et créer un “Graphique à secteurs”. La dimension “user_role” sera disponible dans la partie “Dimension”.

customdef8.png

Ce ne sont bien sûr que des exemples, libre à vous d’utiliser ces user definitions dans des filtres pour vos graphiques, de créer des segments dans GA4 pour filtrer plus facilement vos rapports et bien d’autres encore.

Confiez votre tracking à des experts !

Maximisez l'efficacité de votre tracking en le confiant à notre équipe d'experts. Contactez-nous pour une solution personnalisée et boostez vos performances.