<?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>Denver SEO Blog &#187; Code</title>
	<atom:link href="http://www.seodenver.com/category/code/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.seodenver.com</link>
	<description>Websites designed and optimized for results.</description>
	<lastBuildDate>Wed, 08 Sep 2010 22:39:06 +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>Auto-Optimize WordPress Database without a&#160;Plugin</title>
		<link>http://www.seodenver.com/auto-optimize-wordpress-database/</link>
		<comments>http://www.seodenver.com/auto-optimize-wordpress-database/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 19:17:41 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Functions.php]]></category>
		<category><![CDATA[load time]]></category>
		<category><![CDATA[Optimization]]></category>
		<category><![CDATA[Speed]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Functions]]></category>
		<category><![CDATA[WP-DBManager]]></category>

		<guid isPermaLink="false">http://www.seodenver.com/?p=1539</guid>
		<description><![CDATA[These horses are somehow not cool. Speeding up your blog&#160;is. I am working on a WordPress project that has a pretty heavy database, and I want to be able to auto-optimize the WordPress database. Even though they are integrating this functionality into WordPress 3.0, I want it now, and without having to use a plugin [...]


Related posts:<ol><li><a href='http://www.seodenver.com/how-to-tell-if-your-wordpress-widget-is-activated/' rel='bookmark' title='Permanent Link: How to tell if your WordPress Plugin or Widget is Activated in&nbsp;WordPress'>How to tell if your WordPress Plugin or Widget is Activated in&nbsp;WordPress</a></li>
<li><a href='http://www.seodenver.com/get-images-wordpress-functions/' rel='bookmark' title='Permanent Link: Get Adjacent Images &#8211; More WordPress&nbsp;Functions'>Get Adjacent Images &#8211; More WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/mad-mimi/' rel='bookmark' title='Permanent Link: Mad Mimi Plugin for&nbsp;WordPress'>Mad Mimi Plugin for&nbsp;WordPress</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><a  href="http://www.seodenver.com/auto-optimize-wordpress-database/" class="post_image_link" title="Permanent link to Auto-Optimize WordPress Database without a&nbsp;Plugin"><img class="post_image alignnone" src="http://www.seodenver.com/wp-content/uploads/2010/03/1245541_11014135-e1268334876986.jpg" width="500" height="132" alt="Improve the speed of your blog, just like these running horses are faster because they bleached their hair." /></a>
</p><h3>These horses are somehow not cool. Speeding up your blog&nbsp;is.</h3>
<p>I am working on a WordPress project that has a pretty heavy database, and I want to be able to auto-optimize the WordPress database. Even though they are <a  rel="nofollow" href="http://core.trac.wordpress.org/browser/trunk/wp-admin/maint/repair.php">integrating this functionality into WordPress 3.0</a>, I want it now, and without having to use a plugin (I have had some issues with <a  href="http://wordpress.org/extend/plugins/wp-dbmanager/">WP-DBManager</a> configuring properly on a few&nbsp;sites).</p>
<p>If you add the following code to your functions.php file, it will automatically optimize your WordPress database every 6 hours, keeping it squeaky clean.<span&nbsp;id="more-1539"></span></p>
<h2>Add to your theme&#8217;s&nbsp;functions.php</h2>
<pre lang="php">function kws_optimize_tables() {
	$debug = false;

	// Check to see if the lastOptimized option has been set (it's just a timestamp)
	$lastOptimized = get_option('lastOptimized');

	// If it's been longer than 1 week since it was last optimized, do it up!
	if(!$lastOptimized || $lastOptimized &lt; strtotime("-1 week", time())) { 

		// Update the lastOptimized option to the current time
		update_option('lastOptimized', time());

		// Do some MySQLing to optimize each table in the WordPress DB
		$query = 'SHOW TABLES FROM '. DB_NAME;
		$result = mysql_query($query);
		if (!$result &amp;&amp; $debug) {
			print('Invalid query: ' . mysql_error());
		}
		$num_rows = mysql_num_rows($result);
		if ($num_rows){
			 while ($row = mysql_fetch_row($result)){
		         $query = 'OPTIMIZE TABLE '.$row[0];
				 $result = mysql_query($query);
				 if (!$result &amp;&amp; $debug) {
				    print('Invalid query: ' . mysql_error());
				}
			}
		}
	}
}
add_action('init', 'kws_optimize_tables');</pre>
<p>Just wanted to share some quick code. If you want to change the frequency of the optimization, change &#8220;1 week&#8221; to whatever <a  rel="nofollow" href="http://php.net/manual/en/function.strtotime.php">PHP strtotime()</a> variable you want. Make sure to keep the minus sign in there&nbsp;though!</p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/how-to-tell-if-your-wordpress-widget-is-activated/' rel='bookmark' title='Permanent Link: How to tell if your WordPress Plugin or Widget is Activated in&nbsp;WordPress'>How to tell if your WordPress Plugin or Widget is Activated in&nbsp;WordPress</a></li>
<li><a href='http://www.seodenver.com/get-images-wordpress-functions/' rel='bookmark' title='Permanent Link: Get Adjacent Images &#8211; More WordPress&nbsp;Functions'>Get Adjacent Images &#8211; More WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/mad-mimi/' rel='bookmark' title='Permanent Link: Mad Mimi Plugin for&nbsp;WordPress'>Mad Mimi Plugin for&nbsp;WordPress</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/auto-optimize-wordpress-database/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>How to Prevent Loading WP-DownloadManager&#8217;s CSS&#160;File</title>
		<link>http://www.seodenver.com/prevent-loading-wpdownloadmanagers-css-file/</link>
		<comments>http://www.seodenver.com/prevent-loading-wpdownloadmanagers-css-file/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 18:25:24 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[QuickTip]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[load time]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[WP Plugins]]></category>
		<category><![CDATA[WP-DownloadManager]]></category>

		<guid isPermaLink="false">http://www.seodenver.com/?p=1183</guid>
		<description><![CDATA[If you want to disable the WordPress plugin WP-DownloadManager&#8216;s download-css.css file from being loaded, add the following code to your functions.php&#160;file: remove_action('wp_print_styles', 'downloads_stylesheets'); Alternatively, if you would just like to use your own stylesheet, you can add a file named download-css.css to your theme&#8217;s directory, and the plugin will automatically load your stylesheet&#160;instead. Related posts:How [...]


Related posts:<ol><li><a href='http://www.seodenver.com/prevent-google-background-image-fading-slowly/' rel='bookmark' title='Permanent Link: How to prevent your Google background image from fading in&nbsp;slowly.'>How to prevent your Google background image from fading in&nbsp;slowly.</a></li>
<li><a href='http://www.seodenver.com/how-i-fixed-wp-downloadmanager-404-errors/' rel='bookmark' title='Permanent Link: How I fixed WP-DownloadManager 404&nbsp;errors'>How I fixed WP-DownloadManager 404&nbsp;errors</a></li>
<li><a href='http://www.seodenver.com/constant-contact-wordpress-widget/' rel='bookmark' title='Permanent Link: Constant Contact WordPress Widget &#8211; Add a Newsletter Signup Form to your&nbsp;Sidebar'>Constant Contact WordPress Widget &#8211; Add a Newsletter Signup Form to your&nbsp;Sidebar</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><p><img src="http://www.seodenver.com/wp-content/uploads/2009/11/200984_8974-150x150.jpg" alt="Stop loading WP-Downloads CSS File" title="Stop loading WP-Downloads CSS File" width="150" height="150" class="alignright size-thumbnail wp-image-1187" />
<p>If you want to disable the WordPress plugin <a  rel="nofollow" href="http://lesterchan.net/wordpress/readme/wp-downloadmanager.html">WP-DownloadManager</a>&#8216;s <code>download-css.css</code> file from being loaded, add the following code to your <code>functions.php</code>&nbsp;file:</p>
<pre>remove_action('wp_print_styles', 'downloads_stylesheets');</pre>
<p>Alternatively, if you would just like to use your own stylesheet, you can add a file named <code>download-css.css</code> to your theme&#8217;s directory, and the plugin will automatically load your stylesheet&nbsp;instead.</p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/prevent-google-background-image-fading-slowly/' rel='bookmark' title='Permanent Link: How to prevent your Google background image from fading in&nbsp;slowly.'>How to prevent your Google background image from fading in&nbsp;slowly.</a></li>
<li><a href='http://www.seodenver.com/how-i-fixed-wp-downloadmanager-404-errors/' rel='bookmark' title='Permanent Link: How I fixed WP-DownloadManager 404&nbsp;errors'>How I fixed WP-DownloadManager 404&nbsp;errors</a></li>
<li><a href='http://www.seodenver.com/constant-contact-wordpress-widget/' rel='bookmark' title='Permanent Link: Constant Contact WordPress Widget &#8211; Add a Newsletter Signup Form to your&nbsp;Sidebar'>Constant Contact WordPress Widget &#8211; Add a Newsletter Signup Form to your&nbsp;Sidebar</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/prevent-loading-wpdownloadmanagers-css-file/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Add a Store Catalog XML Sitemap to the Shopp&#160;Plugin</title>
		<link>http://www.seodenver.com/add-store-sitemap-shopp-plugin/</link>
		<comments>http://www.seodenver.com/add-store-sitemap-shopp-plugin/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 21:19:28 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Shopp]]></category>
		<category><![CDATA[Google Base]]></category>
		<category><![CDATA[Google Base Feed]]></category>
		<category><![CDATA[RSS]]></category>
		<category><![CDATA[RSS Feed]]></category>
		<category><![CDATA[Shopp Plugin]]></category>
		<category><![CDATA[Shopping Cart]]></category>
		<category><![CDATA[WordPress RSS Feed]]></category>
		<category><![CDATA[WordPress Shopping Cart]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.seodenver.com/?p=1089</guid>
		<description><![CDATA[The Shopp default RSS/XML/Google Base solution was not&#160;enough. I needed to have a Google Base feed that featured all the store products. For some reason, the recommended process wasn&#8217;t working for me. It was either showing only recent products, or it wasn&#8217;t working at all.  Here&#8217;s how I fixed it: This code will show you [...]


Related posts:<ol><li><a href='http://www.seodenver.com/shopp-plugin-edit-product-link/' rel='bookmark' title='Permanent Link: Edit Product Link for Shopp&nbsp;Plugin'>Edit Product Link for Shopp&nbsp;Plugin</a></li>
<li><a href='http://www.seodenver.com/add-canonical-tags-shopp-plugin-seo/' rel='bookmark' title='Permanent Link: Add Canonical Tags to Shopp Plugin for&nbsp;SEO'>Add Canonical Tags to Shopp Plugin for&nbsp;SEO</a></li>
<li><a href='http://www.seodenver.com/fixing-interspire-google-base-feed/' rel='bookmark' title='Permanent Link: Fixing the Interspire Google Base&nbsp;Feed'>Fixing the Interspire Google Base&nbsp;Feed</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><h3>The Shopp default RSS/XML/Google Base solution was not&nbsp;enough.</h3>
<p><img class="alignright size-medium wp-image-1090" title="RSS Feed, BABY!" src="http://www.seodenver.com/wp-content/uploads/2009/10/1082770_60147230-300x180.jpg" alt="RSS Feed, BABY!" width="300" height="235"&nbsp;/></p>
<p>I needed to have a Google Base feed that featured all the store products. For some reason, the <a  rel="nofollow" href="http://docs.shopplugin.net/Setting_Up_Google_Base">recommended process</a> wasn&#8217;t working for me. It was either showing only recent products, or it wasn&#8217;t working at all.  Here&#8217;s how I fixed it:<span&nbsp;id="more-1089"></span></p>
<h3>This code will show you the way to full indexing. Trust it. Feel&nbsp;it.</h3>
<p>Add the following code before <code>case "newproducts-rss":</code> (near line 1295) in&nbsp;Shopp.php:</p>
<pre>// This adds sitemap functionality for all products
case "catalog-rss":
	$CatalogProducts = new CatalogProducts(array('show' =&gt; 50000));
	header("Content-type: application/rss+xml; charset=utf-8");
	echo shopp_rss($CatalogProducts-&gt;rss());
	exit();
	break;
</pre>
<p>Once you add that, you will be able to see a RSS feed of your entire catalog by visiting&nbsp;<code><em>yoursite.com/your-shop-location</em>/index.php?shopp_lookup=catalog-rss</code></p>
<p>If the RSS feed is empty, try commenting out (add <code>//</code> before it) the following code near line 484 in <code>/core/model/Category.php</code>: <code>$item =&nbsp;apply_filters('shopp_rss_item',$entry,$product);</code></p>
<p>Hope this&nbsp;helps!</p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/shopp-plugin-edit-product-link/' rel='bookmark' title='Permanent Link: Edit Product Link for Shopp&nbsp;Plugin'>Edit Product Link for Shopp&nbsp;Plugin</a></li>
<li><a href='http://www.seodenver.com/add-canonical-tags-shopp-plugin-seo/' rel='bookmark' title='Permanent Link: Add Canonical Tags to Shopp Plugin for&nbsp;SEO'>Add Canonical Tags to Shopp Plugin for&nbsp;SEO</a></li>
<li><a href='http://www.seodenver.com/fixing-interspire-google-base-feed/' rel='bookmark' title='Permanent Link: Fixing the Interspire Google Base&nbsp;Feed'>Fixing the Interspire Google Base&nbsp;Feed</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/add-store-sitemap-shopp-plugin/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Simple Taxonomies Formatting &#8212; Improve the Plugin&#8217;s Code&#160;Output</title>
		<link>http://www.seodenver.com/format-simple-taxonomies-plugin-improve-code-output/</link>
		<comments>http://www.seodenver.com/format-simple-taxonomies-plugin-improve-code-output/#comments</comments>
		<pubDate>Thu, 13 Aug 2009 07:42:00 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[custom taxonomies]]></category>
		<category><![CDATA[custom taxonomy]]></category>
		<category><![CDATA[Joost]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[Simple Taxonomies]]></category>
		<category><![CDATA[Taxonomies]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[Yoast]]></category>

		<guid isPermaLink="false">http://www.seodenver.com/?p=971</guid>
		<description><![CDATA[I&#8217;ve been using Joost de Valk&#8217;s Simple Taxonomies plugin for a couple of projects, and I&#8217;ve been very disappointed by the formatting of the terms output&#160;code. When configuring the plugin, you have the option of choosing &#8220;Add terms to the end of posts&#8221; or &#8220;Add terms to the end of excerpts.&#8221; If you do, you [...]


Related posts:<ol><li><a href='http://www.seodenver.com/strip-extra-imagescaler-attribute-from-plugin-generated-code/' rel='bookmark' title='Permanent Link: Strip Extra ImageScaler Attribute from Plugin-Generated&nbsp;Code'>Strip Extra ImageScaler Attribute from Plugin-Generated&nbsp;Code</a></li>
<li><a href='http://www.seodenver.com/simple-vertical-align-plugin-for-jquery/' rel='bookmark' title='Permanent Link: Simple Vertical Align Plugin for&nbsp;jQuery'>Simple Vertical Align Plugin for&nbsp;jQuery</a></li>
<li><a href='http://www.seodenver.com/add-taxonomy-support-allinone-seo-pack/' rel='bookmark' title='Permanent Link: Add Custom Taxonomy Title Tags Support to All-In-One SEO&nbsp;Pack'>Add Custom Taxonomy Title Tags Support to All-In-One SEO&nbsp;Pack</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><p><img src="http://www.seodenver.com/wp-content/uploads/2009/08/simple-taxonomies.jpg" width="500" height="114" alt="Making the Simple Taxonomies WordPress Plugin Semantic"&nbsp;/></p>
<p>I&#8217;ve been using Joost de Valk&#8217;s <a  rel="nofollow" href="http://yoast.com/wordpress/simple-taxonomies/">Simple Taxonomies plugin</a> for a couple of projects, and I&#8217;ve been very disappointed by the formatting of the terms output&nbsp;code.</p>
<p>When configuring the plugin, you have the option of choosing &#8220;Add terms to the end of posts&#8221; or &#8220;Add terms to the end of excerpts.&#8221;  If you do, you get a <code>&lt;div&gt;</code> and a couple of <code>span</code>s. Not very <a  rel="nofollow" href="http://en.wikipedia.org/wiki/Semantic_Web">semantic</a>.  Also, the code uses an #id, instead of a .class, meaning that if you have more than one post on a page with taxonomies, it no longer&nbsp;validates.</p>
<h3>Simple Taxonomies uses terms, so let&#8217;s make a list of&nbsp;them!</h3>
<p>Here&#8217;s a way to reformat the code and <strong>prevent overwriting in future plugin updates</strong>. We&#8217;re going to strip the code and use a definition list instead (<code>&lt;dl&gt;</code>). Definition lists in <acronym title="Hypertext Markup Language">HTML</acronym> have a term and description; just as a custom taxonomies creates a taxonomy and its terms.<span&nbsp;id="more-971"></span></p>
<p>Add this code to your theme&#8217;s <code>functions.php</code>&nbsp;file:</p>
<pre name="code" class="php">
// Remove the default Simple Taxonomies Formatting
remove_filter(   'the_excerpt', 'yoast_simple_taxonomies_excerpt_filter', 10, 1 );
remove_filter(   'the_content', 'yoast_simple_taxonomies_content_filter', 10, 1 );

// Make your own filter
function custom_simple_taxonomies_filter( $content, $type ) {
   $opt  = get_option('yoast_simpletax');
   $output = '';
   foreach ( $opt['taxonomies'] as $taxonomy ) {
      $filter = false;
      if ( $type == 'content' &amp;&#038; $taxonomy['filter'] ) {
         $filter = true;
      } else if ( $type == 'excerpt' &amp;&#038; $taxonomy['filterexcerpt'] ) {
         $filter = true;
      }
      if ( $filter ) {
         // For each term, create a dd wrapper (Definition Description)
         $terms = get_the_term_list( $post-&gt;ID, $taxonomy['name'], $taxonomy['label'].':&lt;/dt&gt;&lt;dd&gt;', ',&lt;/dd&gt;&lt;dd&gt;', '&lt;/dd&gt;' );
         if ($terms)
            // For each taxonomy, create a dt wrapper (Definition Term)
            $output .= &quot;\t&quot;.'&lt;dt class=&quot;taxonomy-'.$taxonomy['name'].'&quot;&gt;'.$terms.&quot;\n&quot;;
      }
   }
   if ($output != '') {
      // Wrap the shebang in a dl (Definition List)
      $content .= '&lt;dl class=&quot;yoast-taxonomy&quot;&gt;'.&quot;\n&quot;.$output.&quot;\n&quot;.'&lt;/dl&gt;'.&quot;\n&quot;;
   }
   return $content;
}

// Recreate the functions
function custom_simple_taxonomies_content_filter( $content ) {
   return custom_simple_taxonomies_filter( $content, 'content' );
}
function custom_simple_taxonomies_excerpt_filter( $content ) {
   return custom_simple_taxonomies_filter( $content, 'excerpt' );
}
// Add the filters back on the content
add_filter(   'the_excerpt', 'custom_simple_taxonomies_excerpt_filter', 10, 1 );
add_filter(   'the_content', 'custom_simple_taxonomies_content_filter', 10, 1 );
</pre>
<p>So, just paste the code into your <code>functions.php</code> file, and then you just need to style the output so that it <em>looks</em> the same (or not), and you&#8217;re all&nbsp;set.</p>



<p>Related posts:<ol><li><a href='http://www.seodenver.com/strip-extra-imagescaler-attribute-from-plugin-generated-code/' rel='bookmark' title='Permanent Link: Strip Extra ImageScaler Attribute from Plugin-Generated&nbsp;Code'>Strip Extra ImageScaler Attribute from Plugin-Generated&nbsp;Code</a></li>
<li><a href='http://www.seodenver.com/simple-vertical-align-plugin-for-jquery/' rel='bookmark' title='Permanent Link: Simple Vertical Align Plugin for&nbsp;jQuery'>Simple Vertical Align Plugin for&nbsp;jQuery</a></li>
<li><a href='http://www.seodenver.com/add-taxonomy-support-allinone-seo-pack/' rel='bookmark' title='Permanent Link: Add Custom Taxonomy Title Tags Support to All-In-One SEO&nbsp;Pack'>Add Custom Taxonomy Title Tags Support to All-In-One SEO&nbsp;Pack</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/format-simple-taxonomies-plugin-improve-code-output/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to Display a Random Testimonial or Post in&#160;WordPress</title>
		<link>http://www.seodenver.com/how-to-display-a-random-testimonial-or-post-in-wordpress/</link>
		<comments>http://www.seodenver.com/how-to-display-a-random-testimonial-or-post-in-wordpress/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 10:35:30 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Categories]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Posts]]></category>
		<category><![CDATA[query_posts]]></category>
		<category><![CDATA[Random Post]]></category>
		<category><![CDATA[Testimonials]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Development]]></category>

		<guid isPermaLink="false">http://katzwebdesign.wordpress.com/?p=40</guid>
		<description><![CDATA[Set up a testimonials category &#8212; no need for a&#160;plugin. There are a couple of plugins designed specifically for testimonials, but I didn&#8217;t want to use them; they use their own databases, and don&#8217;t keep with WordPress&#8217; simplicity. If possible, the best way to work with WordPress is to use it&#8217;s built-in&#160;functionality. I also wanted [...]


Related posts:<ol><li><a href='http://www.seodenver.com/how-to-tell-if-your-wordpress-widget-is-activated/' rel='bookmark' title='Permanent Link: How to tell if your WordPress Plugin or Widget is Activated in&nbsp;WordPress'>How to tell if your WordPress Plugin or Widget is Activated in&nbsp;WordPress</a></li>
<li><a href='http://www.seodenver.com/excluded-categories/' rel='bookmark' title='Permanent Link: Save Coding Time by Creating Special-Case Categories in&nbsp;WordPress'>Save Coding Time by Creating Special-Case Categories in&nbsp;WordPress</a></li>
<li><a href='http://www.seodenver.com/constant-contact-wordpress-widget/' rel='bookmark' title='Permanent Link: Constant Contact WordPress Widget &#8211; Add a Newsletter Signup Form to your&nbsp;Sidebar'>Constant Contact WordPress Widget &#8211; Add a Newsletter Signup Form to your&nbsp;Sidebar</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><h2>Set up a testimonials category &#8212; no need for a&nbsp;plugin.</h2>
<p>There are a <a  href="http://wordpress.org/extend/plugins/wp-testimonials/" title="WP-Testimonials">couple</a> of <a  href="http://wordpress.org/extend/plugins/advanced-random-post/" title="Advanced Random Post">plugins</a> designed specifically for testimonials, but I didn&#8217;t want to use them; they use their own databases, and don&#8217;t keep with WordPress&#8217; simplicity. If possible, the best way to work with WordPress is to use it&#8217;s built-in&nbsp;functionality.</p>
<p>I also wanted to have the testimonials as a category in <acronym title="WordPress">WP</acronym>, rather than as a separate plugin.  <strong>This code will work for any type of category, not just a&nbsp;testimonial.</strong></p>
<p>Here&#8217;s how to create a random post item in your sidebar: <span&nbsp;id="more-40"></span></p>
<ol>
<li>
<h3>Create a Testimonials&nbsp;Category</h3>
<p>I created a category for testimonials. In this example, the category ID is&nbsp;3</p>
</li>
<li>
<h3>Create the&nbsp;Query</h3>
<p><code>query_posts('showposts=1&#038;cat=3&#038;orderby=rand');</code></p>
<p><strong>Let&#8217;s break down what is going on in the code&nbsp;above:</strong></p>
<ol>
<li>Request one result&nbsp;(<code>showposts=1</code>)</li>
<li>Define the category ID for testimonials&nbsp;(<code>cat=3</code>)</li>
<li>Randomize the result&nbsp;(<code>orderby=rand</code>)</li>
</ol>
</li>
<li>
<h3>Display the&nbsp;testimonial</h3>
<pre name="code" class="php">
&lt;li class=&quot;widget&quot;&gt;
&lt;h2&gt;Testimonials&lt;/h2&gt;

	&lt;?php
	if (have_posts()) : while (have_posts()) : the_post();
	?&gt;
&lt;h3&gt;&lt;?php the_title() ?&gt;&lt;/h3&gt;

		&lt;?php the_excerpt() ?&gt;
	&lt;?php endwhile; endif; ?&gt;
&lt;/li&gt;

&lt;?php wp_reset_query(); ?&gt;
</pre>
</li>
</ol>
<p>With the simple code above, you can add testimonials to your WordPress website as a basic category, and have a random testimonial displayed in your&nbsp;sidebar.</p>
<p>To take it one step further, you can create a Testimonials template page, and have it as a static page on your website by simply having&nbsp;<code>query_posts('cat=3)</code>.</p>
<h3>Use Advanced Category&nbsp;Excluder</h3>
<p>You can exclude the testimonials category from your sidebar category widget and many other places on the site without having to tear up your theme and add a lot of custom code.  Simply download and install the <a  href="http://wordpress.org/extend/plugins/advanced-category-excluder/">Advanced Cagtegory Excluder (ACE) plugin</a> for&nbsp;WordPress.</p>
<p><strong>Note: I updated this post to be more relevant and simple.</strong> The original post was on&nbsp;2/21/2008.</p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/how-to-tell-if-your-wordpress-widget-is-activated/' rel='bookmark' title='Permanent Link: How to tell if your WordPress Plugin or Widget is Activated in&nbsp;WordPress'>How to tell if your WordPress Plugin or Widget is Activated in&nbsp;WordPress</a></li>
<li><a href='http://www.seodenver.com/excluded-categories/' rel='bookmark' title='Permanent Link: Save Coding Time by Creating Special-Case Categories in&nbsp;WordPress'>Save Coding Time by Creating Special-Case Categories in&nbsp;WordPress</a></li>
<li><a href='http://www.seodenver.com/constant-contact-wordpress-widget/' rel='bookmark' title='Permanent Link: Constant Contact WordPress Widget &#8211; Add a Newsletter Signup Form to your&nbsp;Sidebar'>Constant Contact WordPress Widget &#8211; Add a Newsletter Signup Form to your&nbsp;Sidebar</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/how-to-display-a-random-testimonial-or-post-in-wordpress/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Get Adjacent Images &#8211; More WordPress&#160;Functions</title>
		<link>http://www.seodenver.com/get-images-wordpress-functions/</link>
		<comments>http://www.seodenver.com/get-images-wordpress-functions/#comments</comments>
		<pubDate>Tue, 04 Aug 2009 16:24:11 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Functions]]></category>
		<category><![CDATA[Functions.php]]></category>
		<category><![CDATA[get_adjacent_image_link]]></category>
		<category><![CDATA[get_next_image_link]]></category>
		<category><![CDATA[get_previous_image_link]]></category>
		<category><![CDATA[WordPress Developer]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Functions]]></category>

		<guid isPermaLink="false">http://www.seodenver.com/?p=911</guid>
		<description><![CDATA[WordPress, just get the adjacent image links. I&#8217;ll tell you what to do with&#160;them! WordPress is normally great about providing functions that have a return and an echo version.  In WordPress, if a function has the prefix get_, then it does not echo (print it into the content), but rather returns the result so that [...]


Related posts:<ol><li><a href='http://www.seodenver.com/nofollow-seo-for-wordpress/' rel='bookmark' title='Permanent Link: Nofollow SEO for your WordPress&nbsp;Functions'>Nofollow SEO for your WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/auto-optimize-wordpress-database/' rel='bookmark' title='Permanent Link: Auto-Optimize WordPress Database without a&nbsp;Plugin'>Auto-Optimize WordPress Database without a&nbsp;Plugin</a></li>
<li><a href='http://www.seodenver.com/get-medium-image-size-in-wordpress/' rel='bookmark' title='Permanent Link: Get medium image size in&nbsp;WordPress'>Get medium image size in&nbsp;WordPress</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><p><img class="alignnone size-full wp-image-912" title="Get the adjacent photo, man." src="http://www.seodenver.com/wp-content/uploads/2009/08/adjacent.jpg" alt="Get the adjacent photo, man." width="500" height="161"&nbsp;/></p>
<h2>WordPress, just get the adjacent image links. I&#8217;ll tell you what to do with&nbsp;them!</h2>
<p>WordPress is normally great about providing functions that have a <code>return</code> and an <code>echo</code> version.  In WordPress, if a function has the prefix <code>get_</code>, then it does not <code>echo</code> (print it into the content), but rather returns the result so that it can be saved as a variable, like so:  <code>$example =&nbsp;get_example();</code></p>
<p>There are some functions that only have echo capability, so I wanted to share my work-around with you&nbsp;all.</p>
<h4>Updated image_link&nbsp;functions</h4>
<ul>
<li><strong>adjacent_image_link()</strong> »&nbsp;get_adjacent_image_link()</li>
<li><strong>previous_image_link()</strong> »&nbsp;get_previous_image_link()</li>
<li><strong>next_image_link()</strong> »&nbsp;get_next_image_link()</li>
</ul>
<p><span id="more-911"></span>To add the functions, <strong>paste the following code in your theme&#8217;s functions.php&nbsp;file:</strong></p>
<pre>// These functions are copied directly from wp-includes/media.php
// and modified to return the result instead of echo it.
function get_adjacent_image_link($prev = true) {
	global $post;
	$post = get_post($post);
	$attachments = array_values(get_children( array('post_parent' => $post->post_parent, 'post_status' => 'inherit', 'post_type' => 'attachment', 'post_mime_type' => 'image', 'order' => 'ASC', 'orderby' => 'menu_order ID') ));
	foreach ( $attachments as $k => $attachment )
		if ( $attachment->ID == $post->ID )
			break;
	$k = $prev ? $k - 1 : $k + 1;
	if ( isset($attachments[$k]) )
		return wp_get_attachment_link($attachments[$k]->ID, 'thumbnail', true);
}
function get_previous_image_link() {
	return get_adjacent_image_link(true);
}
function get_next_image_link() {
	return get_adjacent_image_link(false);
}</pre>
<p>Now you can use these functions on your website.  Any questions?  <img src='http://www.seodenver.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />&nbsp;</p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/nofollow-seo-for-wordpress/' rel='bookmark' title='Permanent Link: Nofollow SEO for your WordPress&nbsp;Functions'>Nofollow SEO for your WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/auto-optimize-wordpress-database/' rel='bookmark' title='Permanent Link: Auto-Optimize WordPress Database without a&nbsp;Plugin'>Auto-Optimize WordPress Database without a&nbsp;Plugin</a></li>
<li><a href='http://www.seodenver.com/get-medium-image-size-in-wordpress/' rel='bookmark' title='Permanent Link: Get medium image size in&nbsp;WordPress'>Get medium image size in&nbsp;WordPress</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/get-images-wordpress-functions/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WordPress Digg Shortcode Function &#8211; As Seen on&#160;WordPress.com</title>
		<link>http://www.seodenver.com/wordpress-digg-shortcode/</link>
		<comments>http://www.seodenver.com/wordpress-digg-shortcode/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 17:01:39 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Digg]]></category>
		<category><![CDATA[Digg Shortcode]]></category>
		<category><![CDATA[Functions.php]]></category>
		<category><![CDATA[WordPress Shortcode]]></category>
		<category><![CDATA[WordPress.com]]></category>

		<guid isPermaLink="false">http://www.seodenver.com/?p=854</guid>
		<description><![CDATA[When moving from WordPress.com, my Digg shortcodes&#160;broke. I wanted a simple way to transition my Digg chicklets to a WordPress.org&#160;installation. I created a function that does nothing special, except for reproducing the Digg shortcode functionality on WordPress.com. All you need to do is enter &#91;digg=http://digg.com/path_to_story_on_digg&#93;, and it will create a Digg This chicklet for you. [...]


Related posts:<ol><li><a href='http://www.seodenver.com/nofollow-seo-for-wordpress/' rel='bookmark' title='Permanent Link: Nofollow SEO for your WordPress&nbsp;Functions'>Nofollow SEO for your WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/excluded-categories/' rel='bookmark' title='Permanent Link: Save Coding Time by Creating Special-Case Categories in&nbsp;WordPress'>Save Coding Time by Creating Special-Case Categories in&nbsp;WordPress</a></li>
<li><a href='http://www.seodenver.com/auto-optimize-wordpress-database/' rel='bookmark' title='Permanent Link: Auto-Optimize WordPress Database without a&nbsp;Plugin'>Auto-Optimize WordPress Database without a&nbsp;Plugin</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><h2>When moving from WordPress.com, my Digg shortcodes&nbsp;broke.</h2>
<h3>I wanted a simple way to transition my Digg chicklets to a WordPress.org&nbsp;installation.</h3>

<p>I created a function that does nothing special, except for reproducing the Digg shortcode functionality on WordPress.com.  All you need to do is enter <code>&#91;digg=http://digg.com/path_to_story_on_digg&#93;</code>, and it will create a Digg This chicklet for you.  Here&#8217;s the code in action&nbsp;&rarr;</p>
<p><span&nbsp;id="more-854"></span></p>
<pre>function kwd_digg_shortcode($content = null) {
    $url = $content[0];
    if( substr($url, 0, 1) == '=') { $url = substr($url, 1); };
    $content = '
    &lt;div class=&quot;alignright&quot;&gt; &lt;!-- for layout only; you can modify --&gt;
    &lt;script type=&quot;text/javascript&quot;&gt; digg_url = &quot;'.$url.'&quot;;&lt;/script&gt;
    &lt;script src=&quot;http://digg.com/tools/diggthis.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
    &lt;/div&gt;
';
    return $content;
}
add_shortcode('digg', 'kwd_digg_shortcode');
</pre>
<h3>How to install this on your&nbsp;blog</h3>
<p>Simply copy the code above into your theme&#8217;s functions.php file. Any existing Digg shortcodes should automatically start working again, and you also will be able to use the functionality as you were doing on the WordPress.com&nbsp;site.</p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/nofollow-seo-for-wordpress/' rel='bookmark' title='Permanent Link: Nofollow SEO for your WordPress&nbsp;Functions'>Nofollow SEO for your WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/excluded-categories/' rel='bookmark' title='Permanent Link: Save Coding Time by Creating Special-Case Categories in&nbsp;WordPress'>Save Coding Time by Creating Special-Case Categories in&nbsp;WordPress</a></li>
<li><a href='http://www.seodenver.com/auto-optimize-wordpress-database/' rel='bookmark' title='Permanent Link: Auto-Optimize WordPress Database without a&nbsp;Plugin'>Auto-Optimize WordPress Database without a&nbsp;Plugin</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/wordpress-digg-shortcode/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Mountain America Jerky Redesign&#160;Launched</title>
		<link>http://www.seodenver.com/great-jerky-and-cufon/</link>
		<comments>http://www.seodenver.com/great-jerky-and-cufon/#comments</comments>
		<pubDate>Fri, 10 Jul 2009 19:45:35 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Web Design Portfolio]]></category>
		<category><![CDATA[Beef Jerky]]></category>
		<category><![CDATA[Cufon]]></category>
		<category><![CDATA[Denver SEO]]></category>
		<category><![CDATA[gzip]]></category>
		<category><![CDATA[Jerky]]></category>
		<category><![CDATA[Mountain America Jerky]]></category>
		<category><![CDATA[Text Replacement]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Web Fonts]]></category>
		<category><![CDATA[Word Spacing]]></category>
		<category><![CDATA[YSlow]]></category>

		<guid isPermaLink="false">http://seodenver.com/?p=766</guid>
		<description><![CDATA[Mountain America Jerky&#160;Redesign I&#8217;m happy to announce that today the new Mountain America Jerky website launched. Check out the site and try some of their crazy-good Garlic Black Pepper Beef Jerky. One perk of working with a nice client who sells beef jerky is getting samples of the product! Seriously, though, it&#8217;s the best jerky [...]


Related posts:<ol><li><a href='http://www.seodenver.com/denver-roofing-company-website-launched/' rel='bookmark' title='Permanent Link: Denver Roofing Company &#8211; Website&nbsp;Launched!'>Denver Roofing Company &#8211; Website&nbsp;Launched!</a></li>
<li><a href='http://www.seodenver.com/career-magiccom-launched/' rel='bookmark' title='Permanent Link: Career-Magic.com&nbsp;Launched'>Career-Magic.com&nbsp;Launched</a></li>
<li><a href='http://www.seodenver.com/denver-seo-informative-website-launched-denverseoinfo/' rel='bookmark' title='Permanent Link: Denver SEO informative website launched:&nbsp;DenverSEO.info'>Denver SEO informative website launched:&nbsp;DenverSEO.info</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><h2><a  rel="nofollow" href="http://www.mountainamericajerky.com/" title="Great jerky">Mountain America Jerky</a>&nbsp;Redesign</h2>
<div id="attachment_768" class="wp-caption aligncenter" style="width: 490px">
	<a  rel="nofollow" href="http://katzwebdesign.files.wordpress.com/2009/07/jerky-beef-jerky-venison-jerky-and-more-the-best-natural-jerky-20090710.jpg" class="thickbox no_icon" title="Mountain America Jerky Before Redesign"><img class="size-medium wp-image-769" title="Mountain America Jerky Before Redesign" src="http://www.seodenver.com//home/katzwebd/seodenver.com/wp-content/uploads/HLIC/katzwebdesign.files.wordpress.com/2009/07/cb41933b6726f614cd55bbd06187a5f7.jpg" alt="Mountain America Jerky Before Redesign" width="225" height="300" /></a> <a  rel="nofollow" href="http://katzwebdesign.files.wordpress.com/2009/07/mountain-america-jerky-all-natural-beef-jerky-fresh-from-colorado-20090710.jpg" class="thickbox no_icon" title="Mountain America Jerky After Redesign"><img class="size-medium wp-image-768" title="Mountain America Jerky After Redesign" src="http://www.seodenver.com//home/katzwebd/seodenver.com/wp-content/uploads/HLIC/katzwebdesign.files.wordpress.com/2009/07/32da868add15ba64edd45bdc405d1e39.jpg" alt="Mountain America Jerky - After Redesign" width="225" height="300" /></a>
	<p class="wp-caption-text">Mountain America Jerky - Before and After Redesign</p>
</div>
<p style="clear:both;">I&#8217;m happy to announce that today the new Mountain America Jerky website launched. <a  rel="nofollow" href="http://www.mountainamericajerky.com">Check out the site</a> and try some of their crazy-good <strong><a  rel="nofollow" href="http://www.mountainamericajerky.com/beef-jerky.php#product-BEGP08">Garlic Black Pepper Beef Jerky</a></strong>. One perk of working with a nice client who sells beef jerky is getting samples of the product! Seriously, though, it&#8217;s the best jerky I&#8217;ve ever had.</p>
<p>I started working with Mountain America Jerky as a SEO. Jerky is a competitive field, and they wanted to improve their ranking. After working with Chuck on the website&#8217;s optimization, he told me he wanted to go big and rebrand the site. The result is a rustic, functional, beautiful website.<span&nbsp;id="more-766"></span></p>
<h2>Developing with&nbsp;Cufón</h2>
<h3>Making text look nice is now a&nbsp;joy.</h3>
<p>When creating a visually rich site, there is often a tradeoff between aesthetics and functionality. That is especially true when you&#8217;re trying to make sure the site is&nbsp;SEO-friendly.</p>
<p>When creating the design for the site, I wanted to keep the nice fonts I was using, and I had just heard of <a  rel="nofollow" href="http://cufon.shoqolate.com/generate/">Cufón text replacement</a>, an alternative to using images or Flash for text. Little did I know that I would end up using Cufón for the entire site&#8217;s content&#8230;and that it would look&nbsp;great.</p>
<h3>Cufón is not without&nbsp;issues</h3>
<p>There were a few issues I encountered while developing the&nbsp;website:</p>
<ol>
<li>If there was white space around a tag or in between tags, Cufón creates additional <code>canvas</code> blocks that would completely screw up the&nbsp;layout.</li>
<li>No CSS <code>word-spacing</code> property&nbsp;support</li>
<li>JavaScript size of the font&nbsp;files</li>
</ol>
<h3>1. Removing white space for&nbsp;Cufón</h3>
<p>Instead of coding without any line breaks, or tabs, I used PHP gzip functionality to save the HTML as a variable, then strip out all the line breaks. That means by the time Cufón touches it, the white space is gone and the problem&nbsp;solved.</p>
<p><strong>Add the following code to the top of your site&#8217;s PHP files</strong> (may not work on your server, but something similar should. Taken from <a  rel="nofollow" href="http://websitetips.com/articles/optimization/css/crunch/"> this WebsiteTips.com&nbsp;article</a>):</p>
<p><code>ob_start ("ob_gzhandler"); // Initialize ob_gzhandler to send and compress data<br />
ob_start("compress"); // Call the function 'compress'<br />
header("Content-type: text/html;charset: UTF-8");<br />
function compress($buffer) {<br />
/* remove comments */<br />
$buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer);<br />
/* remove tabs, spaces, new lines, etc. */<br />
$buffer = str_replace(array("\r\n", "\r", "\n", "\t"), '', $buffer);<br />
/* remove unnecessary spaces */<br />
$buffer = str_replace(array('   ', '  ','  '), ' ', $buffer);<br />
$buffer = str_replace('{ ', '{', $buffer);<br />
$buffer = str_replace(' }', '}', $buffer);<br />
$buffer = str_replace(';  ', '; ', $buffer);<br />
$buffer = str_replace(',  ', ', ', $buffer);<br />
$buffer = str_replace(' {', '{', $buffer);<br />
$buffer = str_replace('} ', '}', $buffer);<br />
$buffer = str_replace(':  ', ': ', $buffer);<br />
$buffer = str_replace('  ,', ' ,', $buffer);<br />
$buffer = str_replace(' ;', ';', $buffer);<br />
$buffer = str_replace('.  ', '. ', $buffer);<br />
return $buffer;<br />
}</code><br />
Once that&#8217;s added to your site, the output should be super-condensed (view the page source), and the Cufón additional layout issues should be fixed.</p>
<h3>2. Word Spacing for&nbsp;Cufón</h3>
<p>There are more technical ways to do what I did to solve this issue, but here&#8217;s what I did: I enclosed the spaces that were too large with<code> <span class="smallspace"> </span>,</code> and gave <code>.smallspace</code> a <code>font-size:.35em;</code>. You&#8217;ll want to play with the size a bit; the font I was using had spaces that were <em>way</em> too&nbsp;big.</p>
<p>So, instead of the headline code being <code>&lt;h1&gt;Beef Jerky&lt;/h1&gt;</code>, it became <code>&lt;h1&gt;Beef&lt;span class=&quot;smallspace&quot;&gt;&nbsp;&lt;/span&gt;Jerky&lt;/h1&gt;</code></p>
<p>. That made the word spacing much better for the longer headlines on the&nbsp;site.</p>
<h3>3. Reducing the size of the font&nbsp;files</h3>
<p>The fonts were the largest file in the whole site, but I really wanted to use them! So, what I did&nbsp;was:</p>
<ul>
<li>Combine the three fonts into one Javascript&nbsp;file</li>
<li>Put the code at the bottom of the page (which makes the content show up unstyled for a moment, but it saves people from slower connections from a long-ass wait). Load speed improved&nbsp;noticeably.</li>
<li>Used the great <a  rel="nofollow" href="http://farhadi.ir/works/smartoptimizer">SmartOptimizer</a> to automatically implement many <a  rel="nofollow" href="http://developer.yahoo.com/performance/rules.html">load speed best practices</a>, including caching, far-future expires, and more. Check out both <a  rel="nofollow" href="http://farhadi.ir/works/smartoptimizer">SmartOptimizer</a> and <a  rel="nofollow" href="http://developer.yahoo.com/yslow/">YSlow</a> for more information, it&#8217;s GREAT; you won&#8217;t regret&nbsp;it!</li>
</ul>
<p>So the home page went from 830Kb to 675Kb (still large, but much better), and after the first page load, a huge amount of the site&#8217;s resources are cached, resulting in <strong>load times of under 1&nbsp;second</strong>.</p>
<h4>Summary</h4>
<p>Working with Cufón was great, and it is definitely on the top of my list for neat tools. It would have been SO easy just to replace the headlines, but having replaced almost all the site&#8217;s text, I can say that it&#8217;s possible, and not too&nbsp;hard.</p>
<p><strong>Any questions</strong> about Cufón, the process, or thoughts about the&nbsp;website?</p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/denver-roofing-company-website-launched/' rel='bookmark' title='Permanent Link: Denver Roofing Company &#8211; Website&nbsp;Launched!'>Denver Roofing Company &#8211; Website&nbsp;Launched!</a></li>
<li><a href='http://www.seodenver.com/career-magiccom-launched/' rel='bookmark' title='Permanent Link: Career-Magic.com&nbsp;Launched'>Career-Magic.com&nbsp;Launched</a></li>
<li><a href='http://www.seodenver.com/denver-seo-informative-website-launched-denverseoinfo/' rel='bookmark' title='Permanent Link: Denver SEO informative website launched:&nbsp;DenverSEO.info'>Denver SEO informative website launched:&nbsp;DenverSEO.info</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/great-jerky-and-cufon/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>SEO Randomizer: Save the Value of Your SEO&#039;d&#160;Links</title>
		<link>http://www.seodenver.com/value-based-seo/</link>
		<comments>http://www.seodenver.com/value-based-seo/#comments</comments>
		<pubDate>Fri, 19 Dec 2008 20:08:46 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Attribution]]></category>
		<category><![CDATA[Denver SEO]]></category>
		<category><![CDATA[Footer Links]]></category>
		<category><![CDATA[Footer SEO]]></category>
		<category><![CDATA[Google SEO]]></category>
		<category><![CDATA[Nofollow]]></category>
		<category><![CDATA[Nofollow SEO]]></category>
		<category><![CDATA[Search Engine Optimization]]></category>
		<category><![CDATA[SEO Plugin]]></category>
		<category><![CDATA[SEO Plugins]]></category>
		<category><![CDATA[SEO Tricks]]></category>
		<category><![CDATA[SEO Tutorial]]></category>
		<category><![CDATA[WordPress SEO]]></category>

		<guid isPermaLink="false">http://katzwebdesign.wordpress.com/?p=419</guid>
		<description><![CDATA[Update: Now use the SEO WordSpinner plugin to implement this concept.Use the get_seo_spin() PHP function in your theme&#8217;s footer.php file. Footer links are dropping in SEO&#160;value How to stay relevant while getting great&#160;links As a web designer and SEO, I place links in the footers of most of my designs. Clients don&#8217;t mind (I always [...]


Related posts:<ol><li><a href='http://www.seodenver.com/seo-google-profiles-google-adds-nofollow-to-links/' rel='bookmark' title='Permanent Link: SEO Google Profiles &#8211; Google Adds NoFollow to&nbsp;Links'>SEO Google Profiles &#8211; Google Adds NoFollow to&nbsp;Links</a></li>
<li><a href='http://www.seodenver.com/nofollow-seo-for-wordpress/' rel='bookmark' title='Permanent Link: Nofollow SEO for your WordPress&nbsp;Functions'>Nofollow SEO for your WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/seo-wordspinner/' rel='bookmark' title='Permanent Link: Kick SEO Ass with SEO WordSpinner Plugin for WordPress'>Kick SEO Ass with SEO WordSpinner Plugin for WordPress</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><p><img class="aligncenter size-full wp-image-448" title="Search engines attribution link value is falling for SEOs and web designers." src="http://www.seodenver.com/wp-content/uploads/HLIC/c995b987ea40bc565d0dd272bdc88357.jpg" alt="Search engines attribution link value is falling for SEOs and web designers." width="500" height="225"&nbsp;/></p>
<p class="donatebox"><strong>Update:</strong> Now use the <a  href="http://www.seodenver.com/seo-wordspinner/">SEO WordSpinner plugin</a> to implement this concept.<br />Use the <code>get_seo_spin()</code> PHP function in your theme&#8217;s <code>footer.php</code> file.</p>
<h2>Footer links are dropping in SEO&nbsp;value</h2>
<h3>How to stay relevant while getting great&nbsp;links</h3>
<p>As a web designer and SEO, I place links in the footers of most of my designs. Clients don&#8217;t mind (I always request the link), and it&#8217;s a high-quality link. Most small web design and SEO companies do.  Footer links have become very spammy, however, and sites try to stuff as many links there as&nbsp;possible.</p>
<p>SEOmoz has an article about <a  rel="nofollow" href="http://www.seomoz.org/blog/footer-link-optimization-for-search-engines-user-experience">footer link optimization</a> and claims&nbsp;that</p>
<blockquote>
<p><strong>Footer links may be devalued by search engines automatically</strong><br /> Check out the evidence &#8211; Yahoo! <a  rel="nofollow" href="http://www.stonetemple.com/articles/interview-priyank-garg.shtml">says</a> they may devalue footer links, Bill Slawski <a  rel="nofollow" href="http://www.seobythesea.com/?p=1093">uncovers</a> patents suggesting the same and <a  rel="nofollow" href="http://www.seroundtable.com/archives/016086.html">anecdotal evidence</a> suggests Google might do this (or go further) as well. Needless to say, if you want to make sure your links are passing maximum value, it&#8217;s wise to avoid the footer (particularly the footer class&nbsp;itself).</p>
</blockquote>
<p>The era of the PageRank-passing footer links are coming to an end. The search engines have a good reason for devaluing the links &#8212; <strong>but how can we get the juice&nbsp;back?</strong></p>
<h3>Let&#8217;s consider the following&nbsp;issues:</h3>
<ul>
<li>Footer links are being devalued by search&nbsp;engines</li>
<li>Footer links have a low click-through&nbsp;rate</li>
<li>Having the same link on every page makes the link less&nbsp;valuable</li>
<li>Google doesn&#8217;t like spam<span&nbsp;id="more-419"></span></li>
</ul>
<h2>Stop footer link extinction by understanding the&nbsp;cause.</h2>
<h3>Why footer links are being&nbsp;devalued</h3>
<p>The problem search engines have with attribute links is that they&#8217;re on every page in the same place, are off-topic, and exist solely to build&nbsp;links.</p>
<blockquote>
<p>The irrelevant links at the bottom of a page, which will not be as valuable for a user, don’t add to the quality of the user experience, so we don’t account for those in our ranking.<br /> <cite><a  rel="nofollow" href="http://www.stonetemple.com/articles/interview-priyank-garg.shtml">Priyank Garg</a>, Yahoo! Search&nbsp;Technology</cite></p>
</blockquote>
<p>Links that are not <strong>seen as valuable for a user</strong> or <strong>add to the quality of the user experience</strong> will be ignored. The key, then, is to provide users with value. <strong>Value = unique and relevant&nbsp;content</strong>.</p>
<ol>
<li><strong>Placement &amp; Structure:</strong> Links are on the bottom of the page. Many footer DIVs are named something like #footer, so are easily&nbsp;identifiable.</li>
<li><strong>Anchor Text &amp; Outbound Links </strong>
<ol>
<li><strong>Not Unique:</strong> Attribute links are often the same on every page, obviously not unique content. Links often go to the same URL.&nbsp;</li>
<li><strong>Not Relevant:</strong> How often do you see a relevant and unique-seeming attribution link?&nbsp;Never.</li>
</ol>
</li>
</ol>
<h3>a) Placement &amp; Structure: Randomize link&nbsp;location</h3>
<h4>Step 1: Let&#8217;s&nbsp;randomize!</h4>
<p>It&#8217;s well known that having the same code on every page isn&#8217;t as valuable as having different code in different places. So, instead of having a link always at the bottom, randomize the&nbsp;placement.</p>
<h4>Step 2: Change up the&nbsp;tag</h4>
<p>Now that your link and text is in a different place, you want to also make sure that there&#8217;s another variable to <strong>add an additional layer of&nbsp;uniqueness</strong>.</p>
<ul>
<li>&lt;h2&gt;&lt;a&nbsp;href=</li>
<li>&lt;h3&gt;&lt;a&nbsp;href=</li>
<li>&lt;h4&gt;&lt;a&nbsp;href=</li>
<li>&lt;h5&gt;&lt;a&nbsp;href=</li>
<li>&lt;strong&gt;&lt;a&nbsp;href=</li>
<li>&lt;em&gt;&lt;a&nbsp;href=</li>
<li>&lt;span&gt;&lt;a&nbsp;href=</li>
</ul>
<h3>b) Anchor Text &amp; Outbound Links: Be unique and&nbsp;relevant</h3>
<p>If you&#8217;re pushing the same, highly-targeted keywords on all the affiliate links, that is a problem.  Or, rather, it will be a problem when search engines really start coming down hard on this&nbsp;issue.</p>
<h4>Step 1: Randomizing the anchor text and link provides&nbsp;variety</h4>
<p>Instead of having one message, mixing up the text will make each link&nbsp;unique.</p>
<ul>
<li>Denver&nbsp;SEO</li>
<li>SEO&nbsp;Denver</li>
<li>Denver SEO&nbsp;Company</li>
<li>WordPress&nbsp;SEO</li>
<li>Blog&nbsp;SEO</li>
<li>Etc&#8230;</li>
</ul>
<p>You see the value in that? Yeah, well the algorithm will, too.  Unfortunately, it&#8217;s a little spammy, and the <a  rel="nofollow" href="http://twitter.com/mattcutts" title="Matt Cutts is a teddy bear.">humans doing quality control</a> might not like it as&nbsp;much.</p>
<h4>Step 2: Making the links and anchor text&nbsp;relevant</h4>
<p>If you&#8217;re working on a Widget site, then the obvious way to make the link more on-topic is to have your links go to a Widget SEO post on your blog, a Widget Site Portfolio page on your website, or even perform a search on your blog for widgets.  Even if it turns up an empty result, <strong> the links will be more on&nbsp;topic</strong>.</p>
<ul>
<li><a  title="Denver SEO" href="#">How SEO Helps Widget Companies</a> &#8211; points to an article on your&nbsp;blog</li>
<li>Our company got <a  title="Denver SEO Company" href="#">Small Business SEO</a> services &#8211; points to page on your&nbsp;website</li>
<li><a  title="WordPress SEO in Denver" href="#">We LOVE our new website</a> &#8211; points to Widget Co. testimonial on your&nbsp;website</li>
<li><a  title="Denver Blog SEO" href="#">How we rank well in searches</a> &#8211; points to article on Widget site about your SEO&nbsp;company</li>
</ul>
<p>Each of the unique anchor text options now go to a relevant, targeted page, and most important: <strong>the links are not spammy</strong>.  Of course, if you want to stick with the Step 1 version and use &#8220;spammy&#8221;-seeming links, that is fine, too. Until your site gets banned.  For a less spammy tactic, you can add another variable: the title attribute. <strong>Hover over the links above</strong>. Not spam, but a good link that has value to the user AND is chock full of SEO&nbsp;awesomeness.</p>
<h2>Check out the SEO Randomizer&nbsp;code</h2>
<p>Based on the concepts in this article, I have been working on a PHP script that could be added to a WordPress functions.php&nbsp;file.</p>
<p><a  href="http://katzwebdesign.net/downloads/SEOrandomizer.php"><span style="text-decoration: line-through;">Check out the SEO Randomizer demo</span></a><span style="text-decoration: line-through;"> and here&#8217;s the </span><a  href="http://katzwebdesign.net/downloads/SEOrandomizer.txt" title="An SEO Trick"><span style="text-decoration: line-through;">SEO Randomizer source code</span></a><span style="text-decoration: line-through;">.</span> Use the <a  href="http://wordpress.org/extend/plugins/seo-wordspinner/" rel="dofollow">SEO WordSpinner plugin</a> to implement this&nbsp;concept.</p>
<h3>WordPress &#8216;User Value SEO Plugin&#8217; to&nbsp;come</h3>
<p><a  href="http://katzwebdesign.net" title="-)">Katz Web Design</a> is going to be developing a plugin for WordPress that will incorporate all of these features into a wonderful SEO plugin.  Stay&nbsp;tuned.</p>
<p>Update: Katz Web Services has released the <a  href="http://wordpress.org/extend/plugins/seo-wordspinner/" rel="dofollow">SEO WordSpinner plugin</a> that allows you to put this concept into practice today. Try it out, and leave a comment with what you think of the&nbsp;plugin!</p>
<p><strong>What do you think? Leave comments, improvements, criticism, etc.&nbsp;below.</strong></p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/seo-google-profiles-google-adds-nofollow-to-links/' rel='bookmark' title='Permanent Link: SEO Google Profiles &#8211; Google Adds NoFollow to&nbsp;Links'>SEO Google Profiles &#8211; Google Adds NoFollow to&nbsp;Links</a></li>
<li><a href='http://www.seodenver.com/nofollow-seo-for-wordpress/' rel='bookmark' title='Permanent Link: Nofollow SEO for your WordPress&nbsp;Functions'>Nofollow SEO for your WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/seo-wordspinner/' rel='bookmark' title='Permanent Link: Kick SEO Ass with SEO WordSpinner Plugin for WordPress'>Kick SEO Ass with SEO WordSpinner Plugin for WordPress</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/value-based-seo/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Nofollow SEO for your WordPress&#160;Functions</title>
		<link>http://www.seodenver.com/nofollow-seo-for-wordpress/</link>
		<comments>http://www.seodenver.com/nofollow-seo-for-wordpress/#comments</comments>
		<pubDate>Fri, 07 Nov 2008 19:03:02 +0000</pubDate>
		<dc:creator>Zack Katz</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[comments_popup_link]]></category>
		<category><![CDATA[Functions]]></category>
		<category><![CDATA[Functions.php]]></category>
		<category><![CDATA[get_the_category]]></category>
		<category><![CDATA[get_the_category_list]]></category>
		<category><![CDATA[next_image_link]]></category>
		<category><![CDATA[next_posts_link]]></category>
		<category><![CDATA[Nofollow]]></category>
		<category><![CDATA[post_comments_feed_link]]></category>
		<category><![CDATA[previous_image_link]]></category>
		<category><![CDATA[previous_posts_link]]></category>
		<category><![CDATA[the_category]]></category>
		<category><![CDATA[WordPress SEO]]></category>

		<guid isPermaLink="false">http://katzwebdesign.wordpress.com/?p=390</guid>
		<description><![CDATA[While working on a recent website, I became frustrated by the lack of nofollow support in many WordPress functions.  Make that, most WordPress&#160;functions. There are a few WP functions that I wanted to add nofollow to, so here&#8217;s a list and a download link: Download the nofollow_functions.php&#160;file next_posts_link() →&#160;nofollow_next_posts_link() When you&#8217;re in a single post, [...]


Related posts:<ol><li><a href='http://www.seodenver.com/get-images-wordpress-functions/' rel='bookmark' title='Permanent Link: Get Adjacent Images &#8211; More WordPress&nbsp;Functions'>Get Adjacent Images &#8211; More WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/blog-comments-pass-juice-nofollow/' rel='bookmark' title='Permanent Link: Blog Comments Now Pass Juice &#8211; No More&nbsp;`nofollow`'>Blog Comments Now Pass Juice &#8211; No More&nbsp;`nofollow`</a></li>
<li><a href='http://www.seodenver.com/seo-google-profiles-google-adds-nofollow-to-links/' rel='bookmark' title='Permanent Link: SEO Google Profiles &#8211; Google Adds NoFollow to&nbsp;Links'>SEO Google Profiles &#8211; Google Adds NoFollow to&nbsp;Links</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p></p><div id="attachment_391" class="wp-caption alignright" style="width: 188px">
	<a  rel="nofollow" href="http://www.prweaver.com/blog/2005/01/21/89-the-no-nofollow-initiative"><img class="size-full wp-image-391" title="Link Condom image from prweaver.com" src="http://katzwebdesign.files.wordpress.com/2008/11/link-condom.jpg" alt="Link Condom" width="188" height="191" /></a>
	<p class="wp-caption-text">Pretty crude idea of nofollow, isn&#39;t it?</p>
</div>
<p>While working on a recent website, I became frustrated by the lack of nofollow support in many WordPress functions.  Make that, most WordPress&nbsp;functions.</p>
<p>There are a few WP functions that <a  href="http://www.seodenver.com/stevespanglercom-web-design-launched/">I wanted to add nofollow to</a>, so here&#8217;s a list and a download link:<span&nbsp;id="more-390"></span></p>
<h2><a  href="http://katzwebdesign.net/downloads/nofollow_functions.txt">Download the nofollow_functions.php&nbsp;file</a></h2>
<h3>next_posts_link() →&nbsp;nofollow_next_posts_link()</h3>
<p>When you&#8217;re in a single post, you can use next_posts_link to generate a link to the next post.  The title can be the name of the next post, or something as simple as&#8230;well&#8230;&#8221;next post&#8221;. If you&#8217;re using your blog title as the anchor text, you already will have the same link coming from your archives page &#8212; and probably inside a H2, which is much more valuable. To give that link more weight, we add nofollow. If you have some other text, like &#8220;next post&#8221;, then you definitely will want&nbsp;nofollow.</p>
<h3>previous_posts_link() →&nbsp;nofollow_previous_posts_link()</h3>
<p>Same issues as nofollowing the next_posts_link()&nbsp;function.</p>
<h3>post_comments_feed_link() →&nbsp;nofollow_post_comments_feed_link()</h3>
<p>I didn&#8217;t want search engines spending their time indexing the comments feed for each post &#8212; they should be automatically checking the new comments anyway, so why have that issue arise?  Nofollow it&nbsp;is!</p>
<h3>comments_popup_link() →&nbsp;nofollow_comments_popup_link()</h3>
<p>If you have a link to leave a comment on your archives or index page of your blog, you have a slew of links that say &#8220;leave a comment&#8221; or something similar. That&#8217;s just not great link sculpting going on there, now is it? Nofollow it&nbsp;is!</p>
<h3>next_image_link() → get_next_image_link() &amp;<br />
previous_image_link() → get_previous_image_link()</h3>
<p>In an attachment.php file, next_image_link() and previous_image_link() are similar to next_posts_link() and previous_posts_link() &#8212; except they provide links to the next image in the gallery, rather than the next post in the blog. I wanted to be able to have the functions return a value rather than echo one, so I added these functions that keep the WordPress structure of adding get_ before a function to represent it does the same&nbsp;thing.</p>
<h3>the_category → nofollow_the_category &amp;<br />
get_the_category →  nofollow_get_the_category &amp;<br />
get_the_category_list → nofollow_get_the_category_list</h3>
<p><strong>Added 2/20/09:</strong> I&#8217;ve modified these category functions to be nofollow.  If you want to list the categories your post is in without having them followed, use these functions instead of your standard&nbsp;ones.</p>
<h4>Installation</h4>
<p>Once you <a  href="http://katzwebdesign.net/downloads/nofollow_functions.txt">download these WordPress nofollow functions</a>, if you don&#8217;t have a functions.php file yet, rename it to functions.php and copy it to your theme&#8217;s folder.  If you do have a functions.php file, copy and paste the code into the file. Then, use the nofollow versions of the functions in place of the standard versions in your&nbsp;theme.</p>
<p>Leave any questions in the comments&nbsp;below!</p>


<p>Related posts:<ol><li><a href='http://www.seodenver.com/get-images-wordpress-functions/' rel='bookmark' title='Permanent Link: Get Adjacent Images &#8211; More WordPress&nbsp;Functions'>Get Adjacent Images &#8211; More WordPress&nbsp;Functions</a></li>
<li><a href='http://www.seodenver.com/blog-comments-pass-juice-nofollow/' rel='bookmark' title='Permanent Link: Blog Comments Now Pass Juice &#8211; No More&nbsp;`nofollow`'>Blog Comments Now Pass Juice &#8211; No More&nbsp;`nofollow`</a></li>
<li><a href='http://www.seodenver.com/seo-google-profiles-google-adds-nofollow-to-links/' rel='bookmark' title='Permanent Link: SEO Google Profiles &#8211; Google Adds NoFollow to&nbsp;Links'>SEO Google Profiles &#8211; Google Adds NoFollow to&nbsp;Links</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.seodenver.com/nofollow-seo-for-wordpress/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
	</channel>
</rss>
