Get Google Analytics
Description
Very simple but useful utility to attach google analytics code to your pages or master template. Now you can choose between 2 syntaxes.
Example usage:
...
<xsl:import href="../utilities/get-google-analytics.xsl"/>
...
<xsl:call-template name="get-google-analytics">
<xsl:with-param name="tracker" select="'tracker_id_provided_by_google'"/>
</xsl:call-template>
...
To use new alternative syntax:
...
<xsl:call-template name="get-google-analytics-alt">
<xsl:with-param name="tracker" select="'tracker_id_provided_by_google'"/>
</xsl:call-template>
...
XSLT
View Raw
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template name="get-google-analytics"> <xsl:param name="tracker"/> <script type="text/javascript"> <xsl:text> 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")); </xsl:text> </script> <script type="text/javascript"> <xsl:text> try { var pageTracker = _gat._getTracker("</xsl:text><xsl:value-of select="$tracker"/><xsl:text>"); pageTracker._trackPageview(); } catch(err) {} </xsl:text> </script> </xsl:template> <xsl:template name="get-google-analytics-alt"> <xsl:param name="tracker"/> <script type="text/javascript"> <xsl:text disable-output-escaping="yes"> var _gaq = _gaq || []; _gaq.push(['_setAccount', '</xsl:text><xsl:value-of select="$tracker"/><xsl:text disable-output-escaping="yes">']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga); })(); </xsl:text> </script> </xsl:template> </xsl:stylesheet>