jeudi 27 décembre 2012

prestashop : afficher les mots clés recherchés dans GoogleAnalytics

La problématique :
"Arrgghh !! Dans GoogleAnalytics, contenu / recherche sur site, y'a rien !!! mes mots clés, ben, y sont pas suivis !! et pourtant, j'ai bien dit "search_query" dans le filtre !!"

La solution
 Voyons, petit padawan, prestashop, c'est si intelligement pensé que les mots recherchés passent en POST, donc invisibles pour googleAnalytics.
Alors, on va creuser un ch'tit peu.
Et modifier carrément le code de suivi.

modules ---> ganalytics ----> ganalytics.php

ligne 157, tu as :

function hookHeader($params)
{
// Better way to check which file / controller name is loaded
if (!($file = basename(Tools::getValue('controller'))))
$file = str_replace(array('.php', '-'), '', basename($_SERVER['SCRIPT_NAME']));

Juste en dessous, tu vas ajouter ceci :

if($file == "category" ||
$file == "product" ||
$file == "search" ||
$file == "cms" ||
$file == "index") {
$file = $_SERVER["REQUEST_URI"];
}

Et voilà, désormais, tu récupères les termes recherchés sous prestashop dans ton analytics.

Précision :
si tu n'axs pas activé la ré-écriture des url (genre, parce que tu as une architecture complexe et que le module de ré-écriture de base te fout la zone), le code ci-dessous permettra un suivi pointu des catégories par id et des produits.
Si tu as juste besoin du "search", tu peux supprimer des conditions.