Nový Google Analytics kód a jeho úprava
14. 1. 2008 v 23.17V dřívějším spotu jsem rozebral svoji úpravu Google Analytics skriptu. Nyní však samotný Google doporučuje přejít na svoji novou verzi skriptu, kterou uveřejnil během listopadu 2007. Ta je oproti té starší menší tj. 19,3KiB (7,8 KiB s gzip kompresí) oproti 21,4 KiB (6,3 KiB), lépe se vnitřně spravuje, koncepčně je celé řešené objektově a nově nabízí sledování různých událostí. Například, že se kliknulo na nějakou položku v AJAXové aplikaci.
Vycházel jsem ze své staré staré úpravy. Obalující if jsem nahradil moderním try-catch blokem. Jinak žádná další změna nestala. Kód zase přidáme na konec HTML kódu následujícím způsobem:
<!DOCTYPE ...>
<html>
<head>
...
</head>
<body>
....
<script src="http://www.google-analytics.com/ga.js" type="text/javascript"></script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-xxxxxx-x");
//-- CZ vyhledavace
pageTracker._addOrganic("seznam.cz","q");
pageTracker._addOrganic("centrum.cz","q");
pageTracker._addOrganic("jyxo.cz","s");
pageTracker._addOrganic("atlas.cz","q");
pageTracker._addOrganic("zoohoo.cz","q");
pageTracker._addOrganic("tiscali.cz","query");
pageTracker._addOrganic("1.cz","q");
pageTracker._addOrganic("volny.cz","search");
//-- SK vyhledavace
pageTracker._addOrganic("zoznam","s");
pageTracker._addOrganic("atlas.sk","phrase");
pageTracker._addOrganic("centrum.sk","q");
pageTracker._addOrganic("morfeo.sk","q");
pageTracker._addOrganic("szm","ws");
pageTracker._addOrganic("azet","sq");
pageTracker._addOrganic("zoohoo.sk","q");
pageTracker._initData();
pageTracker._trackPageview();
} catch(e) {
}
</script>
</body>
</html>
Nejprve tedy vytvoříme sledovací objekt pomocí
_gat._getTracker("UA-xxxxxx-x"), pak postupně přidáváme
vyhledávače pomocí funkce _addOrganic("domain.tld","parameter")
tohoto objektu. Bohužel již není možnost ovlivnit pořadí přidávaných
položek, takže se pravděpodobně naše položky přidají až za ty, co tam
má napevno přidán Google. Jediná možnost by snad byla
pohrabat se víc v kódu, ale ten je zakódovaný pomocí JS kompresoru.
Následně zavoláme funkci _initData(), která posbírá data
o prohlížeči, odkud návštěvník přišel atd. Nakonec je ještě nutné
zavolat _trackPageview(). Ta odešle nasbíraná data do Google
Analytics a tím vytvoří pageview.
V novém kódu generovaném z Google Analytics ještě navíc figuruje test, zda je stránka zabezpečená pomocí protokolu HTTPS:
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
Ten jsem odstranil, z důvodu že ta generovaná část zapisuje kód do
prohlížeče pomocí document.write, jenž nefunguje v XHTML
dokumentu. Avšak pokud potřebujete sledovat zabezpečené stránky, nahraďte
v mé úpravě původní „http://www.google-analytics.com/ga.js“ za
zabezpečenou variantu „https://ssl.google-analytics.com/ga.js“.