Si vous utilisez Google Tag Manager pour gérer les balises de suivi et de marketing de votre site Web, il est fort probable que vous utilisiez l'objet dataLayer. Le dataLayer est un objet JavaScript qui stocke des informations sur la page et ses interactions, qui peuvent être utilisées pour transmettre des données aux balises de suivi et de marketing.
Lorsqu'il s'agit de suivre et d'analyser les données de votre ecommerce dans Google Analytics, les produits et services que vous vendez sont au centre de tout. Pour suivre et mesurer avec précision les performances de ces items, le dataLayer va pousser un tableau d'items. Pour suivre avec précision ce tableau d'items dans GA4, il faut suivre une certaine nomenclature. Cependant, la façon dont votre couche de données est construite, peut ne pas suivre la nomenclature exacte dont GA4 a besoin pour suivre les données des items. Dans cet article, nous allons voir comment modifier les valeurs des dimensions de dataLayer dans un tableau d'item sans Google Tag Manager.
Voici un exemple de ce à quoi votre tableau d'items pourrait ressembler :
items: [
{
id: SKU_12345,
product_type_name: "Apparel",
product_name: "Stan and Friends Tee",
platform_name: "Google Merchandise Store",,
brand_name: "Google",
list_id: “related_products”,
list_name: "Related Products",
variant: "green"
price: 9.99,
quantity: 1
}
]
Comme vous pouvez le constater, ce tableau n'utilise pas les bonnes références, alors qu'il est nécessaire pour mesurer vos données de commerce électronique dans GA4. En suivant la documentation de Google, voici à quoi devrait ressembler le tableau :
items: [
{
item_id: SKU_12345,
item_category: "Apparel",
item_name: "Stan and Friends Tee",
affiliation: "Google Merchandise Store",
brand: "Google",
item_list_id: “related_products”,
item_list_name: "Related Products",
item_variant: "green"
price: 9.99,
quantity: 1
}
]
La solution la plus simple serait de modifier directement l'objet DataLayer, mais ce n'est pas toujours possible. Le DataLayer compte souvent plusieurs parties prenantes, et la convention de dénomination utilisée par GA4 n'est peut-être pas celle qui convient le mieux à l'entreprise. Comment modifier les dimensions du tableau sans avoir à modifier l'objet dataLayer ?
Il existe une simple fonction Javascript personnalisée qui vous permettra de le faire exactement. Voici la fonction appliquée à mon tableau personnalisé :
function() {
var matches = {
id: 'item_id',
product_type_name: 'item_category',
product_name: 'item_name',
platform_name: 'affiliation',
brand_name: 'brand',
list_id: 'item_list_id',
list_name: 'item_list_name',
variant: 'item_variant',
}
var old_array = {{Items array}}
var new_array = []
for (var i = 0; i < old_array.length; i++) {
for (var property in old_array[i]) {
var new_property = matches[property]
if (new_property) {
old_array[i][new_property] = old_array[i][property]
delete old_array[i][property]
}
}
new_array.push(old_array[i])
}
return new_array
}
Lorsqu'elle est appliquée à une variable dans Google Tag Manager, cette fonction vous permettra de pousser les nouvelles valeurs dans la variable nouvellement créée et de créer un tableau qui respecte la nomenclature de GA4.
En utilisant la fonction JavaScript personnalisée, vous pouvez modifier l'objet dataLayer pour qu'il soit conforme à la nomenclature requise pour GA4, sans avoir à modifier directement le dataLayer lui-même. Cela vous permet de segmenter et d'analyser vos données d'une manière qui soit significative pour votre entreprise, tout en respectant les meilleures pratiques de suivi des données d’e-commerce dans GA4.