<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>Rudi Shumpert : Code By Numbers &#187; jQuery</title> <atom:link href="http://www.rudishumpert.com/tag/jquery/feed/" rel="self" type="application/rss+xml" /><link>http://www.rudishumpert.com</link> <description>Adventures in web development and analytics</description> <lastBuildDate>Wed, 08 Sep 2010 00:13:53 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.0.1</generator> <item><title>Form Abandonment</title><link>http://www.rudishumpert.com/2009/11/11/form-abandonment/</link> <comments>http://www.rudishumpert.com/2009/11/11/form-abandonment/#comments</comments> <pubDate>Wed, 11 Nov 2009 19:26:11 +0000</pubDate> <dc:creator>Rudi</dc:creator> <category><![CDATA[Code Snipets]]></category> <category><![CDATA[ColdFusion]]></category> <category><![CDATA[Omniture]]></category> <category><![CDATA[Web Analytics]]></category> <category><![CDATA[jQuery]]></category> <category><![CDATA[Form Abandonment]]></category><guid
isPermaLink="false">http://www.rudishumpert.com/?p=280</guid> <description><![CDATA[NOTE: The code samples below are merely a proof of concept. This solution is not actively in place in any production environmetn that I am involved with. I was talking to a fellow ColdFusion developer about a web site he was working on, specifically a registration form, and what were some of the best practices [...]]]></description> <content:encoded><![CDATA[<blockquote><p><strong>NOTE:</strong> The code samples below are merely a proof of concept.  This solution is not actively in place in any production environmetn that I am involved with.</p></blockquote><p>I was talking to a fellow ColdFusion developer about a web site he was working on, specifically a registration form, and what were some of the best practices with form length and such that would facilitate users filling out the form and submitting.   This is a common issue with web sites that will not be going away anytime soon.  In fact the questions he had are the same ones I have seen in dozens of blog posts trying to figure this out.</p><ul><li>How many questions to put on a form?</li><li>What type of questions work the best?</li><li>What question(s) scared off a user and kept them from completing the form?</li></ul><p>I know that there are a few "Form Abandonment" plug-ins out there for Omniture and the likes, but from what I've seen the data you get is somewhat limited.   If your form has 20 elements on it and the plug-in only lets you know what the last element with focus was, you have to really think about the validity of that data.  How do you know for sure that the user filled out the elements in order?  Did the developer of the form set the tab index correctly?  Did the user glance at the form, click somewhere near the bottom and then bail?  Did the user fill out half the form the shut down the browser?</p><p><span
id="more-280"></span></p><p>From my understanding of the tools out there today, you are not able to get accurate answers to the questions above.     However, this is an very interesting problem that got me thinking on how I could leverage ColdFusion to be able to capture and get more meaningful data from the abandoned forms.</p><p>The Challenge:</p><ul><li>Capture data by users from abandoned forms</li><li>Push that data into Omniture SiteCatalyst</li><li>Create a report with real, actionable data on form abandonment</li></ul><p>The Setup:</p><ul><li>ColdFusion 8</li><li> Client Variables stored in a database (SQL)</li><li> jQuery</li></ul><p><strong>Step 1</strong>:  Capture the form data</p><p>The trick to capturing the data would be to find a way to save the form data in some persistent variable so that the data could be retrieved later.  Right away I thought of the <a
title="More Information on ColdFusion Client Scope" href="http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=sharedVars_08.html" target="_blank">Client Scope</a> .   Then the task was to find a method that could be deployed to multiple forms across a site with minimal re-coding.    For that I wrote this snippet of jQuery:</p><pre class="brush: plain;">
&lt;script language=&quot;JavaScript&quot; type=&quot;text/javascript&quot;&gt;
$(document).ready(function(){
// Form Handling/Analysis Test
$('#Form2BeTracked').children().each(function() {
$(this).bind('change',function (event){
$.post(&quot;/includes/processFormProgress.cfm&quot;, $('#Form2BeTracked').serializeArray() );

});

});

});
&lt;/script&gt;
</pre><p>This jQuery function simply binds an onChange event to every form on the page it finds with the id: Form2BeTracked.   This is an easy to deploy script site wide and has no impact on the normal form behavior.</p><p>The code on the proccessFormProgress.cfm is all of 3 lines :</p><pre class="brush: plain;">
&lt;cfparam name=&quot;client.formProgress&quot; default=&quot;#session.cfid##session.cftoken#&quot;&gt;
&lt;cfwddx action=&quot;cfml2wddx&quot; input=&quot;#form#&quot; output=&quot;wddxSession&quot;&gt;
&lt;cfset client.formProgress = wddxSession&gt;
</pre><p>This code takes the entire Form Struct and saves it into the client scope/database</p><div
id="attachment_293" class="wp-caption aligncenter" style="width: 460px"><img
class="size-full wp-image-293" title="Form Data in the Client Scope" src="http://www.rudishumpert.com/wp-content/uploads/2009/11/clientScope.png" alt="Form data is saved real time in the client scope." width="450" height="358" /><p
class="wp-caption-text">Form data is saved real time in the client scope.</p></div><p>The nice part about this is that by default, ColdFusion saves the list of form elements in the form.fieldnames variable.  Using that we can get a count of the number of variables for this form, and then see that only 2 of the fields were filled out and what the values of those fields are.  All of this without the user clicking submit.</p><p><strong>Step 2</strong>:  Clear data on form submit</p><p>If the user submits the form, we need to clear the data in the client variable.  This is an easy one line of code to be added on the page that handles the normal submitting of the form.</p><pre class="brush: plain;">&lt;cfset client.formProgress = &quot;&quot;&gt;</pre><p>This will clear the form data out of the client variable.  This is an important step that can not be skipped or your count of abandoned forms will be inflated.</p><p><strong>Step 3</strong>:  Check for abandoned form data</p><p>By saving the form data in the client scope it will be held there in the database for as long as the time frame defined in the ColdFusion Administrator.  This setting will determine the frequency that you must check for abandoned form data.</p><pre class="brush: plain;">
select cd.cfid, cd.data, cg.lvisit from
CDATA as cd join CGLOBAL as cg
on cd.cfid = cg.cfid
where cg.lvisit &gt;= (your timeframe here )
and cd.data like 'formprogress%'
</pre><p>This should pull a result set with all the records of form data that has been saved. ie. abandoned.</p><p><img
src="http://www.rudishumpert.com/wp-content/uploads/2009/11/form-abandonedquery.png" alt="form-abandonedquery" title="form-abandonedquery" width="673" height="275" class="aligncenter size-full wp-image-298" /></p><p>With a little ColdFusion magic</p><pre class="brush: plain;">
&lt;cfquery name=&quot;abandoned&quot; datasource=&quot;#REQUEST.dsn#&quot;&gt;
	select cd.cfid, cd.data, cg.lvisit from
	CDATA as cd join CGLOBAL as cg
	on cd.cfid = cg.cfid
	where cg.lvisit &gt;= GETDATE()-1
	and cd.data like 'formprogress%'  

&lt;/cfquery&gt;

&lt;cfset variables.wddx2Convert = abandoned.data&gt;
&lt;cfset variables.wddxLen = len(variables.wddx2Convert)&gt;
&lt;cfset variables.wddx2Convert = right(variables.wddx2Convert,variables.wddxLen-13)&gt;
&lt;cfset variables.wddx2Convert = replacenocase(&quot;#variables.wddx2Convert#&quot;,&quot;##&quot;,&quot;&quot;,&quot;ALL&quot;)&gt;
&lt;cfdump var=&quot;#variables.wddx2Convert#&quot;&gt;

&lt;cfwddx action=&quot;wddx2cfml&quot; input=&quot;#variables.wddx2Convert#&quot; output=&quot;variables.form&quot;&gt;

&lt;cfset variables.formElementList = variables.form[&quot;fieldnames&quot;]&gt;
&lt;cfset variables.formElementCount = listlen(&quot;#variables.formElementList#&quot;)&gt;

&lt;cfset variables.formList = &quot;&quot;&gt;
&lt;cfloop list=&quot;#variables.formElementList#&quot; index=&quot;formItem&quot;&gt;
	&lt;cfset variables.tempValue = variables.form[&quot;#formItem#&quot;] &gt;
	&lt;cfset variables.valuePair = &quot;#formItem#:#variables.tempValue#&quot;&gt;
	&lt;cfset variables.formList = ListAppend(variables.formList,&quot;#variables.valuePair#&quot;,&quot;|&quot;)&gt;
&lt;/cfloop&gt;
</pre><p>You end up with a variable string that you can then submit to Omniture using the Data Insertion API. See this <a
href="http://www.rudishumpert.com/2009/09/11/use-omnitures-data-insertion-api/">post</a> on details if the API.</p><p><img
src="http://www.rudishumpert.com/wp-content/uploads/2009/11/form-dataDetail.png" alt="form-dataDetail" title="form-dataDetail" width="574" height="82" class="aligncenter size-full wp-image-299" /></p><p>As you can see from the image above, you now have the count of the form elements in the form along with the data values from the form elements that were filled out before the user abandoned the form.   With this, you can choose what format would be the most useful for your needs to really dig into abandoned forms.</p><p>-Rudi</p><p><a
href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F11%2F11%2Fform-abandonment%2F&amp;linkname=Form%20Abandonment" title="Twitter" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a
href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F11%2F11%2Fform-abandonment%2F&amp;linkname=Form%20Abandonment" title="LinkedIn" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a
href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F11%2F11%2Fform-abandonment%2F&amp;linkname=Form%20Abandonment" title="Delicious" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a
href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F11%2F11%2Fform-abandonment%2F&amp;linkname=Form%20Abandonment" title="Facebook" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a
class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Save</a></p>]]></content:encoded> <wfw:commentRss>http://www.rudishumpert.com/2009/11/11/form-abandonment/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Pathing:  Internal Search Analysis.  (not just for page views)</title><link>http://www.rudishumpert.com/2009/10/16/pathing-internal-search/</link> <comments>http://www.rudishumpert.com/2009/10/16/pathing-internal-search/#comments</comments> <pubDate>Fri, 16 Oct 2009 15:35:21 +0000</pubDate> <dc:creator>Rudi</dc:creator> <category><![CDATA[Code Snipets]]></category> <category><![CDATA[Omniture]]></category> <category><![CDATA[Web Analytics]]></category> <category><![CDATA[jQuery]]></category> <category><![CDATA[Google Mini]]></category> <category><![CDATA[Search Analysis]]></category><guid
isPermaLink="false">http://www.rudishumpert.com/?p=252</guid> <description><![CDATA[When I was at the Omniture training class a few weeks back, the instructor mentioned that an advantage of storing the internal search terms in a s.prop was that you could get pathing enabled on the s.prop and you would then be able to see not only what your visitors were searching on, but how [...]]]></description> <content:encoded><![CDATA[<p>When I was at the Omniture training class a few weeks back, the instructor mentioned that an advantage of storing the internal search terms in a s.prop was that you could get pathing enabled on the s.prop and you would then be able to see not only what your visitors were searching on, but how they refined their search.</p><blockquote><p><strong>Note:</strong> After you choose which s.prop you are going to use to store/capture the data in, you will need to contact Omniture Client Care to get pathing enabled for that s.prop</p></blockquote><div
id="attachment_254" class="wp-caption aligncenter" style="width: 610px"><img
class="size-full wp-image-254" title="Where does your path take you?" src="http://www.rudishumpert.com/wp-content/uploads/2009/10/pathing.jpg" alt="pathing" width="600" height="361" /><p
class="wp-caption-text">Where does your path take you?</p></div><p><span
id="more-252"></span><br
/> In a previous post, I went over how we capture the search terms from the Google Mini.   So when I returned from the training, I contacted client care and had then enable pathing on the s.prop and "Shazam!".  We now have pathing on the internal search terms.</p><p>This has been working great, and I've been really pleased with being able to see exactly how visitors refine their searches.  Recently, I had the opportunity to chat with Susan Fariss, at the American Chemical Society (<a
href="http://twitter.com/soozantf">@soozantf)</a> about search analytics and the questions came up on do we know where the user was on the site when they initiated the search and then what search result did they click on.. if any?   Well... I did not have those answers, but I sure wanted to.</p><p>So the question was could the following be accomplished:</p><ul><li>Detect/capture where visitor was on the web site when the search was initiated</li><li>Modify the google mini xslt to tag all of the search results so that the result clicked could be captured</li><li>Would this provide the full search pathing expected</li></ul><p><strong>Detect/capture where visitor was on the web site when the search was initiated:</strong><br
/> This was the easy part of the adventure for sure.  I already had a JavaScript function handling the initial search, so I added another function call in that</p><pre class="brush: plain;">
			function recordInternalSearchOmniture(){
				var s = s_gi(s_account);
				s.linkTrackVars=&quot;prop1&quot;;
				s.prop1 = s.pageName;
				s.tl(document.location.href,'o','InternalSearch');
				s.linkTrackVars=&quot;&quot;;
			}
</pre><p>This code snippet simply pulls the s.pageName and puts it into the same s.prop used to store the actual search terms, creating the "entry point" of our search path.</p><p><strong>Modify the google mini xslt to tag all of the search results so that the result clicked could be captured:</strong><br
/> This proved to be the pesky part of the adventure.  The challenge was to be able to add the jQuery function to tag the search results someplace where the Google xslt could access it.  After a few missteps I added the jQuery to a main .js file (not the s_code.js) that I was able to link to inside the xslt.   But first I needed to add a div with a specific Id to the xslt so that I would be able to tag the results with the tracking codes.  So inside the xslt I did the following.</p><pre class="brush: plain;">
&lt;!-- **********************************************************************
 Search results (do not customize)
     ********************************************************************** --&gt;
.
.
.
&lt;div id=&quot;googleSearch&quot;&gt;
&lt;!-- *** Customer's own result page header *** --&gt;
.
.
&lt;!-- *** HTML footer *** --&gt;
&lt;/div&gt;
</pre><p>So find the section that says "Search results (do not customize)" <img
src='http://www.rudishumpert.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> - I viewed this as more of a suggestion than a hard rule.  Inside this section, wrap the header/footer items with a new div with the id of "googleSearch" (or some other id of your choosing).  This is needed so that the jQuery function can find the elements that need the new tags.  Once that div is in place add a jQuery function to find all results in that div and tag them.  The first function below binds a function call to the a href tags in the search results.  The second function does pulls in the location of the search results and records where the user clicked.  This provides the "exit point" to our path.</p><pre class="brush: plain;">
$(document).ready(function(){
$('#googleSearch a').each(function(i) {
  var hrefval = $(this).attr('href');
  $(this).bind('click',function (event){
  	omniGoogleSearchResultClicked('Search Result Clicked',hrefval)
  	});
});
.
.
function omniGoogleSearchResultClicked(propTitle,hrefVal){
	var s = s_gi(s_account);
	s.linkTrackVars=&quot;prop1&quot;;
	s.prop1 = hrefVal;
	s.tl(document.location.href,'o',propTitle);
	s.linkTrackVars=&quot;&quot;;
}
</pre><p><strong>Would this provide the full search pathing expected:</strong><br
/> Yes!  This does indeed provide a full search path.</p><div
id="attachment_263" class="wp-caption aligncenter" style="width: 279px"><a
href="http://www.rudishumpert.com/2009/09/02/i-loathe-ie-6/"><img
class="size-full wp-image-263" title="It is true!" src="http://www.rudishumpert.com/wp-content/uploads/2009/10/searchpathing.png" alt="It is true!" width="269" height="134" /></a><p
class="wp-caption-text">I knew IE6 was evil!</p></div><p
style="text-align: center;"><p>Ok..  so maybe I changed the actual values, but this is the type of search pathing you can achieve with tracking the entry and exit points in the same s.prop as the search terms and having pathing enabled on that s.prop.</p><p>-Rudi</p><p><a
href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F10%2F16%2Fpathing-internal-search%2F&amp;linkname=Pathing%3A%20%20Internal%20Search%20Analysis.%20%20%28not%20just%20for%20page%20views%29" title="Twitter" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a
href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F10%2F16%2Fpathing-internal-search%2F&amp;linkname=Pathing%3A%20%20Internal%20Search%20Analysis.%20%20%28not%20just%20for%20page%20views%29" title="LinkedIn" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a
href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F10%2F16%2Fpathing-internal-search%2F&amp;linkname=Pathing%3A%20%20Internal%20Search%20Analysis.%20%20%28not%20just%20for%20page%20views%29" title="Delicious" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a
href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F10%2F16%2Fpathing-internal-search%2F&amp;linkname=Pathing%3A%20%20Internal%20Search%20Analysis.%20%20%28not%20just%20for%20page%20views%29" title="Facebook" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a
class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Save</a></p>]]></content:encoded> <wfw:commentRss>http://www.rudishumpert.com/2009/10/16/pathing-internal-search/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>jQuery FTW!  Auto-tag static links for Omniture.</title><link>http://www.rudishumpert.com/2009/07/23/jquery-ftw-auto-tag-static-links-for-omniture/</link> <comments>http://www.rudishumpert.com/2009/07/23/jquery-ftw-auto-tag-static-links-for-omniture/#comments</comments> <pubDate>Thu, 23 Jul 2009 11:10:46 +0000</pubDate> <dc:creator>Rudi</dc:creator> <category><![CDATA[Code Snipets]]></category> <category><![CDATA[Web Analytics]]></category> <category><![CDATA[jQuery]]></category> <category><![CDATA[Omniture]]></category><guid
isPermaLink="false">http://codebynumbers.wordpress.com/?p=10</guid> <description><![CDATA[I am knee deep in implementing Omniture into our existing corporate site, and sometimes.... the path is clear as mud. The task of the day was to tag a set of links so that they would show up as Products in SiteCatalyst. The sub-task, ok maybe my personal bias, was to do so in a [...]]]></description> <content:encoded><![CDATA[<p>I am knee deep in implementing Omniture into our existing corporate site, and sometimes.... the path is clear as mud.    The task of the day was to tag a set of links so that they would show up as Products in SiteCatalyst.   The sub-task, ok maybe my personal bias, was to do so in a way that I would not have to babysit the page and keep updating the tags as new links were added.</p><p><strong>Problem: </strong> How do you take a static list of hyperlinks on a set of pages and go about setting up some method to tag each of these links with a Javascript call to Omniture.  Also trying to put in some type of future proofing so that ongoing updates to this file(s).</p><p><strong>Environment:</strong> ColdFusion8 Server / jQuery</p><p><strong>My Approach:</strong></p><pre class="brush: plain;">
$(document).ready(function(){
   $('#divToBeTagged a').each(function(i) {
       var hrefval = $(this).attr('href');
       $(this).bind('click',function (event){
          omnitureJSCall('Product Category',hrefval)
       });
    });
});
</pre><p>I went with this for a few reasons, the main one being the ease of future updates to this page.  I work on a small team of dev's and anyone else could be making updates to this page and with this method, we will always have the correct tags on our product downloads on this page.  Is it perfect?  Nah...  but it does work well for me.</p><p>-RRS</p><p><a
href="http://www.addtoany.com/add_to/twitter?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F07%2F23%2Fjquery-ftw-auto-tag-static-links-for-omniture%2F&amp;linkname=jQuery%20FTW%21%20%20Auto-tag%20static%20links%20for%20Omniture." title="Twitter" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/twitter.png" width="16" height="16" alt="Twitter"/></a> <a
href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F07%2F23%2Fjquery-ftw-auto-tag-static-links-for-omniture%2F&amp;linkname=jQuery%20FTW%21%20%20Auto-tag%20static%20links%20for%20Omniture." title="LinkedIn" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a> <a
href="http://www.addtoany.com/add_to/delicious?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F07%2F23%2Fjquery-ftw-auto-tag-static-links-for-omniture%2F&amp;linkname=jQuery%20FTW%21%20%20Auto-tag%20static%20links%20for%20Omniture." title="Delicious" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/delicious.png" width="16" height="16" alt="Delicious"/></a> <a
href="http://www.addtoany.com/add_to/facebook?linkurl=http%3A%2F%2Fwww.rudishumpert.com%2F2009%2F07%2F23%2Fjquery-ftw-auto-tag-static-links-for-omniture%2F&amp;linkname=jQuery%20FTW%21%20%20Auto-tag%20static%20links%20for%20Omniture." title="Facebook" rel="nofollow" target="_blank"><img
src="http://www.rudishumpert.com/wp-content/plugins/add-to-any/icons/facebook.png" width="16" height="16" alt="Facebook"/></a> <a
class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save">Share/Save</a></p>]]></content:encoded> <wfw:commentRss>http://www.rudishumpert.com/2009/07/23/jquery-ftw-auto-tag-static-links-for-omniture/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (user agent is rejected)
Database Caching 18/29 queries in 1.623 seconds using disk

Served from: www.rudishumpert.com @ 2010-09-10 12:30:09 -->