We are running few Plone sites which use top level domain (TLD) to identify the site language.
Like many other CMSs out there, Plone has only one box to enter Google Analytics script snippet. It is often desirable to use different tracker for different domain and different language combinations, but Google itself doesn’t provide any fancy generator to create complex page tracking code.
Page tracker code, though looks little difficult when spit out by Google Analytics, is just normal Javascript. You can make the condition to choose the appropriate page tracker id in Javascript itself using document.location property and this way you don’t need to mess with your page templates to create separate tracking Javascript snippet slots.
Here is an example what you can toss in to Plone site setup -> site -> JavaScript for web statistics support:
<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"> try { // Choose page tracker id according to domain var domains = document.location.hostname.split("."); var tld = domains[domains.length-1]; if(tld == "fi") { // .fi pageTracker = _gat._getTracker("UA-8819100-1"); } else { // .com pageTracker = _gat._getTracker("UA-8819100-4"); } pageTracker._trackPageview(); } catch(err) { } </script>
This is used on www.twinapex.com and www.twinapex.fi sites.
Use console.log(err) to output possible Javascript in catch {} errors using Firebug.
Pingback: Scripting Google analytics for multidomain site | Twinapex Blog- SFWEBDESIGN.com