Indice de satisfaction et Google Analytics

Dans le cadre d’un site pour lequel mon équipe fait le support technique, nous devions mettre en place un outil de validation de la satisfaction des pages en regard à leur contenu. La demande était de mettre un genre de «Cette information vous a-t-elle aidé?» dans le bas de chaque page.
Je connais les critiques face à ces approches, mais si on utilise les résultats avec un grain de sel et un peu de recul, ça peut avoir son utilité, hein? Suffit de rester froid et de bien comprendre que ce sont des résultats qualitatifs plus que quantitatifs. Voilà, c’est dit.
Dans ma grande lâcheté (lâcheté bien ordonnée commence par soi-même, c’est bien connu), je ne voulais pas d’un gros truc lourd qui serait géré par TYPO3 et demanderait la création d’écrans d’analyse et tout. Il fallait trouver une approche légère et efficace. Google nous a encore soufflé la réponse!
Suivi des événements
L’approche préconisée est celle du «suivi des événements» dans Google Analytics (GA). C’est en soi très simple: on ajoute un élément dans chaque page qui doit être évaluée avec un OnClick sur les boutons indiquant à GA si le visiteur est satisfait ou non. C’est tout.
<div id="satisfaction"> Ces informations vous ont-elles aidé ? <button onclick="document.getElementById('satisfaction').style.display = 'none';_gaq.push(['_trackEvent', 'Indice de satisfaction', 'satisfait', 'Accueil']);"> Oui</button> <button onclick="document.getElementById('satisfaction').style.display = 'none';_gaq.push(['_trackEvent', 'Indice de satisfaction', 'satisfait', 'Accueil']);"> Non</button> </div>
La clé ici c’est le _gaq.push qui va nous permettre de déterminer un événement (_trackEvent) et de lui appliquer une catégorie (Indice de satisfaction) et finalement une valeur (satisfait) pour une page donnée (Accueil).
Dans TYPO3, c’est fort simple, seulement l’ajout d’un petit TypoScript crée le texte et les boutons:
lib.satisfaction = COA lib.satisfaction { 5 = COA 5{ 1 =TEXT 1{ value = <div id="satisfaction">Ces informations vous ont-elles aidé ? wrap = | } 2 =TEXT 2{ value = <button onclick="document.getElementById('satisfaction').style.display = 'none';_gaq.push(['_trackEvent', 'Indice de satisfaction', 'satisfait', '{page:title}']);"> Oui</button> insertData = 1 } 4 =TEXT 4{ value = <button onclick="document.getElementById('satisfaction').style.display = 'none';_gaq.push(['_trackEvent', 'Indice de satisfaction', 'satisfait', '{page:title}']);"> Non</button> insertData = 1 } }
Ce TS génère le petit bloc de texte et les deux boutons en plus de les faire disparaître lorsque cliqués.
Ok, et les résultats?
Une fois dans GA, on doit aller voir Contenu > suivi des événements pour voir l’ensemble des événements, et si on sélectionne «Catégories», on va voir «Indice de satisfaction» avec une valeur associée à la période sélectionnée.
22 événements ont été enregistrés pour la période, dans la catégorie «Indice de satisfaction»
Si on fore un peu plus profondément, on va avoir les réponses possibles (satisfait ou insatisfait). Dans le cas actuel, 22 satisfaits:
Le bouton satisfait a été cliqué 22 fois au total.
Finalement, en regardant en détail les pages, on voit l’ensemble des pages, le nombre de fois où le bouton a été cliqué et, surtout, le nombre d’événements uniques.
GA présente l’ensemble des pages avec le nombre de fois où l’élément «satisfait» a été cliqué.
Avantages de GA
Les avantages de l’utilisation de Google Analytics plutôt que de développer une nouvelle interface dans TYPO3 est indéniable. L’outil nous propose une manière de forer et d’exploiter les données, on peut aussi les croiser avec des segments et ainsi pousser encore plus loin dans l’analyse statistique.
Je suis conscient de la limitation des données recueillies, tel que mentionné plus tôt, mais ça peut donner une idée l’appréciation de certaines pages.
Si nous avions développé une extension dans TYPO3, ça aurait pris quelques jours, alors que l’utilisation de GA avec du TS a permis à mon collègue développeur, qui a tout codé, de réaliser la fonction en un après-midi. Je vous invite donc, si vous le désirez, à copier le TS et à le mettre dans vos sites au besoin!