Jul 10 2008

funzioni: _setCookiePath() e _getCookiePath()

La funzione _setCookiePath(stringa) è un po’ particolare e forse non è nemmeno utile alla maggior parte di noi, però ci permette di risparmiare tempo nel setup del profilo e consente una interpretazione migliore dei dati. Sebbene il nome tragga in inganno, serve a definire quale sia la directory predefinita per il cookie del vostro sito, e non a definire in quale directory del PC dell’utente salvare i cookie di GA (come molti erroneamente pensano). Poniamo un caso pratico e semplificato:

avete un sito molto molto grande fatto anche da decine di sottodirectory /cartella1/, /cartella2/, eccetera, e normalmente le monitorate separate tramite profili-copia e filtri di inclusione (filtro predefinito di inclusione: includi solo il traffico verso una subdir). Tramite l’utilizzo di un po’ di scripting lato server e della funzione _setCookiePath() è possibile ottenere lo stesso risultato con una riga di codice, senza bisogno di creare (e poi gestire) decine di filtri. Aggiungendo la riga
pageTracker._setCookiePath("/cartella1/");

prima della chiamata a initData() GA registrerà solo i dati delle visite relative a quella cartella. Accetta come parametro di ingresso una stringe contenente il nome della sottodirectory. La migliore interpretazione dei dati è relativa al fatto che una sessione di visita, per Google Analytics, inizia quando i cookie vengono scritti. Tramite i filtri e i profili-copia, se un utente arriva nella homepage del sito tramite motore di ricerca e poi si muove verso la cartella1, nei report vedremo un arrivo da motore con keyword (conta la sessione); diversamente tramite questa funzione la sessione di visita inizierà nel momento in cui il visitatore aprirà la prima pagina di cartella1, quindi visita diretta nel caso appena illustrato (e visita da motore se e solo se si tratta di un arrivo diretto da motore su una pagina di cartella1).

Ecco un esempio di codice di monitoraggio per php che setta il cookie al livello della prima cartella dopo l’host, qualunque essa sia:


var pageTracker = _gat._getTracker("UA-12345-1");
<?php $public_base = max(explode('/', dirname($_SERVER['PHP_SELF']))); ?>
pageTracker._setCookiePath("<?php echo '/'.$public_base.'/'; ?>");
pageTracker._initData();
pageTracker._trackPageview(); 

Un altro caso possibile è un sito in cui ogni utente loggandosi ha accesso ad una area personale, e solo a quella. L’uso di _setCookiePath() ci permette di tracciare le attività di ogni utente in un profilo separato evitando di dover ricorrere ai filtri.

la funzione _getCookiePath() è una funzione informativa che ci restituisce il valore della directory ove viene scritto il cookie. Può essere usata in qualunque punto della pagina tramite il richiamo a
pageTracker._getCookiePath();

Condividi l'articolo:

Scrivi un Commento