Universal Analytics (UA) deviendra obsolète le 1er juillet 2023, ce qui signifie qu'il cessera de traiter les données. Les propriétés Analytics 360 cesseront de fonctionner le 1er octobre 2023. Migrez vers Google Analytics 4.

Fonctionnement d'analytics.js

Presque tout ce que vous devez mesurer avec analytics.js peut utiliser la file d'attente de commandes ga(). Ce guide explique en quoi consiste la file d'attente de commandes, comment elle fonctionne et comment exécuter des commandes pour mesurer les interactions des utilisateurs.

File d'attente de commandes ga

La balise Google Analytics définit une fonction ga globale appelée "file d'attente de commandes". C'est ce qu'on appelle la file d'attente de commandes. Au lieu d'exécuter les commandes qu'elle reçoit immédiatement, elle les ajoute à une file d'attente qui retarde l'exécution jusqu'à ce que la bibliothèque analytics.js soit complètement chargée.

En JavaScript, les fonctions sont également des objets, ce qui signifie qu'elles peuvent contenir des propriétés. La balise Google Analytics définit une propriété q sur l'objet fonction ga sous la forme d'un tableau vide. Avant le chargement de la bibliothèque analytics.js, l'appel de la fonction ga() ajoute la liste des arguments transmis à la fonction ga() à la fin du tableau q.

Par exemple, si vous exécutez la balise Google Analytics, puis consignez immédiatement le contenu de ga.q dans la console, vous verrez un tableau de deux éléments contenant les deux ensembles d'arguments déjà transmis à la fonction ga():

console.log(ga.q);

// Outputs the following:
// [
//   ['create', 'UA-XXXXX-Y', 'auto'],
//   ['send', 'pageview']
// ]

Une fois la bibliothèque analytics.js chargée, elle inspecte le contenu du tableau ga.q et exécute chaque commande dans l'ordre. Ensuite, la fonction ga() est redéfinie, de sorte que tous les appels suivants s'exécutent immédiatement.

Ce modèle permet aux développeurs d'utiliser la file d'attente de commandes ga() sans avoir à vérifier si le chargement de la bibliothèque analytics.js est terminé. Il fournit une interface simple et synchrone qui élimine la plupart des complexités du code asynchrone.

Ajouter des commandes à la file d'attente

Tous les appels vers la file d'attente de commandes ga() partagent une signature commune. Le premier paramètre, "command", est une chaîne qui identifie une méthode analytics.js particulière. Les paramètres supplémentaires sont les arguments transmis à cette méthode.

La méthode à laquelle une commande fait référence peut être globale (comme create), une méthode sur l'objet ga ou une méthode d'instance sur un objet de suivi, comme send. Si la file d'attente de commandes ga() ne reçoit pas une commande qu'elle ne reconnaît pas, elle l'ignore simplement, ce qui rend les appels de la fonction ga() très sûrs, car ils ne généreront presque jamais d'erreur.

Pour obtenir la liste complète de toutes les commandes pouvant être exécutées via la file d'attente de commandes, consultez la documentation de référence sur la file d'attente de commandes ga().

Paramètres de commande

La plupart des commandes analytics.js (et les méthodes correspondantes) acceptent des paramètres dans différents formats. Cette méthode pratique permet de transmettre plus facilement des champs couramment utilisés à certaines méthodes.

Prenons l'exemple des deux commandes de la balise Google Analytics:

ga('create', 'UA-XXXXX-Y', 'auto');
ga('send', 'pageview');

Dans la première commande, create accepte les champs trackingId, cookieDomain et name à spécifier éventuellement en tant que deuxième, troisième et quatrième paramètres. La commande send accepte un second paramètre facultatif hitType.

Toutes les commandes acceptent un paramètre fieldsObject final qui permet également de spécifier des champs. Par exemple, les deux commandes ci-dessus du tag peuvent être réécrites comme suit:

ga('create', {
  trackingId: 'UA-XXXXX-Y',
  cookieDomain: 'auto'
});
ga('send', {
  hitType: 'pageview'
});

Consultez la documentation de référence sur la file d'attente de commandes ga() pour obtenir la liste complète des paramètres facultatifs autorisés pour chacune des commandes.

Étapes suivantes

Après avoir lu ce guide, vous devriez savoir comment exécuter des commandes avec analytics.js et comment fonctionne la file d'attente de commandes. Le guide suivant vous explique comment créer des objets de suivi.