412.343.3692
1.800.975.1844

Blogger Blogs, ga.js, and XHTML

  If you’re having trouble getting the new Google Analytics, ga.js code to work on
  your Blogger Blog, we have a quick and easy fix for you.

  Actually, this fix isn’t specific to Blogger or even Google Analytics for that matter. 
  To make your web pages XHTML-compliant, you should either do this on all of your
  scripts, or you should move your scripts to a separate file.

  Here’s an example: (Beware of smart quotes.  WordPress keeps changing my formatting automagically.)

<script type=’text/javascript’>
//<![CDATA[
var gaJsHost = (("https:" == document.location.protocol)
? "https://ssl." : "http://www.");
document.write("\<script src='" + gaJsHost
+ "google-analytics.com/ga.js' type='text/javascript'>\<\/script>" );
//]]>
</script>

<script type=’text/javascript’>
//<![CDATA[
var pageTracker = _gat._getTracker("UA-XXXXXXX-1");
pageTracker._initData();
pageTracker._trackPageview();
//]]>
</script>

See how the first line after each script tag, we have: //<![CDATA[

And right before closing each script tag, we have: //]]>

The forward slashes are JavaScript comment indicators for older browsers that don’t understand CDATA.  This post on About.com provides some additional information.  Note the author uses multiline comment characters rather than the // we use here.  Both methods will work just fine.

So what have we done?

  We told the browser’s validator to ignore our script by wrapping it in the CDATA
  tag.  So now Blogger and the W3C will happily accept your Google Analytics
  Tracking Code.

  - Jason Green
 

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • bodytext
  • del.icio.us
  • StumbleUpon
  • Sphinn
  • Facebook

5 Responses to “Blogger Blogs, ga.js, and XHTML”

  1. TheMacGuy Says:

    THANK YOU THANK YOU THANK YOU!
    I’ve been looking for a way to get my new Google Analytics code to validate. The CDATA tag did the trick. I should have known.

  2. Google Analytics Script does not Validate in XHTML 1.0 Strict — Lawrence Salberg Says:

    [...] an Analytics Authorized Consultant. However, in all fairness, the exact fix I needed was written by Jason Green of LunaMetrics, who graciously allowed Mangold Sengers to reprint it. Thanks to [...]

  3. John Says:

    [...]you should either do this on all of your scripts, or you should move your scripts to a separate file.[...]

    If I want to use second option, how would I do that?

  4. Jason Green Says:
    @John,

    You can put the entire GA script into a second file, we’ll name it mygacode.js, and save that on your server.

    *Make sure to remove all tags from mygacode.js. This file should just be straight JavaScript.*

    Then, on the page where that script would normally show up, put the code below:

    
       <script src="mygacode.js"></script>
    
    

    w3schools.com has a great tutorial here: http://www.w3schools.com/js/js_whereto.asp

    I hope this helps.

    - Jason Green

  5. clyde Says:

    Which is right code for a Blogger blog?

Leave a Reply