Nieuwe code voor Google Analytics nu ook werkend in ASP
Categorie: Webanalytics
Vanwege een te vroege release van de nieuwe Google Analytics tracking code zijn hier nogal wat problemen door ontstaan. De code zou niet werken in ASP vanwege een genest script blok, dit is wel een fout in ASP dus van Microsoft, maar Google had het best even mogen testen.
Nested Script Block
A script block cannot be placed inside another script block.
Daarnaast was vanwege W3C validatie richtlijnen niet mogelijk om het script in een Blogger blog te plaatsen. Google is daarom officieel met een nieuw tracking script gekomen. Hierin zijn enkele aanpassingen gedaan die het script overal zou moeten laten werken:
<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>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-xxxx-xx");
pageTracker._initData();
pageTracker._trackPageview();
</script>
En voor de XHTML puristen moeten er nog CDATA blokken om de code heen:
<script type="text/javascript">
//<![CDATA[
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>
<script type="text/javascript">
//<![CDATA[
var pageTracker = _gat._getTracker("UA-xxxx-xx");
pageTracker._initData();
pageTracker._trackPageview();
//]]>
</script>
Gerelateerde posts
Google sitemaps, leuk, maar niet voor nieuwe sites...
Google Analytics link tagging optimaal maken voor SEO...
Greasemonkey script voor Google Analytics...
Hou jij nieuwe vermeldingen in Google bij?...
Google Analytics cookie en meerdere domeinen...
Een nieuwe site lanceren, vraag een SEO expert!...

20 December 2007 8:39
Niet geheel ontopic, maar vraag me al langere tijd af waarom ze kiezen voor 2 losse codeblokken. Bij de oude urchin-code deden ze dit, maar ook bij de nieuwe.
Want is het voordeel boven alles in 1 script-block;
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"));
// Niet het scriptblock sluiten maar doorrrr
var pageTracker = _gat._getTracker("UA-xxxx-xx");
pageTracker._initData();
pageTracker._trackPageview();
20 December 2007 8:56
Dit komt door het feit dat ze in het eerste blok een script blok schrijven die de ga.js moet oproepen. Daarna wordt dus daadwerkelijk ga.js ingeladen en vervolgens mag pas het 2de script blok uitgevoerd worden want die is weer code nodig uit ga.js
22 December 2007 14:54
De code, die je toont, is JavaScript. Dat staat toch los van ASP? ASP is trouwens behoorlijk verouderd. We zitten nu toch in het "dot NET tijdperk"?
22 December 2007 18:25
Daar heb je gelijk in, maar toch viel ASP over de oude code. Hij zag op een of andere manier een genest script block en viel daarover.
9 September 2008 13:08
.NET klinkt leuk maar werkt het ook voor de browsers van Apple Macs, Linux en mobieltjes? Ik bouw al jaren sites zonder .NET te gebruiken.