<?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>alexking.org &#187; WordPress</title>
	<atom:link href="http://alexking.org/blog/topic/wordpress/feed" rel="self" type="application/rss+xml" />
	<link>http://alexking.org</link>
	<description>Alex King's blog - software, photography, sports, etc.</description>
	<lastBuildDate>Sun, 07 Feb 2010 20:52:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>WordPress HelpCenter is Hiring</title>
		<link>http://alexking.org/blog/2010/02/04/wordpress-helpcenter-is-hiring</link>
		<comments>http://alexking.org/blog/2010/02/04/wordpress-helpcenter-is-hiring#comments</comments>
		<pubDate>Thu, 04 Feb 2010 23:44:36 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4067</guid>
		<description><![CDATA[I&#8217;m very pleased that we have reached the point with WordPress HelpCenter where we need to add another developer to our team.

We&#8217;re looking for someone with a broad range of WordPress, PHP, XHTML and CSS experience, basic server configuration experience, and in particular someone with outstanding communication skills.
Ideally we&#8217;d like to add someone who lives [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m very pleased that we have reached the point with <a href="http://wphelpcenter.com">WordPress HelpCenter</a> where we need to add another developer to our team.</p>
<p class="center"><a href="http://wphelpcenter.com" title="WordPress HelpCenter"><img src="http://farm3.static.flickr.com/2682/4330699897_d58f015abd_o.png" width="349" height="66" alt="WordPress HelpCenter" /></a></p>
<p>We&#8217;re looking for someone with a broad range of WordPress, PHP, XHTML and CSS experience, basic server configuration experience, and in particular someone with outstanding communication skills.</p>
<p>Ideally we&#8217;d like to add someone who lives on the west end of the country<sup><a href="#fn1265235969557n" id="fn1265235969557" class="footnote">1</a></sup> in order to have better coverage throughout the work day across all US timezones. However, we&#8217;re definitely looking for the best person for the job.</p>
<p>Providing great service is our number one priority, and we need someone who understands this inherently. Not only does the HelpCenter team reflect on <a href="http://crowdfavorite.com">Crowd Favorite</a>, but we also have a responsibility to every <a href="http://wphelpcenter.com/affiliates/">affiliate plugin and theme developer</a> who puts their trust in us. It&#8217;s also important to continue <a href="http://twitter.com/eyedesignstudio/status/8247795135" rel="external">receiving</a> <a href="http://www.lazydada.com/2010-02-02/wordpress-403-error-and-how-to-solve-it/" rel="external">good</a> <a href="http://twitter.com/venturehacks/status/8605906885" rel="external">press</a> and word-of-mouth recommendations.</p>
<p>See the <a href="http://wphelpcenter.com/jobs/">job posting</a> on the HelpCenter web site for more details and to apply. The position is open immediately and we hope to fill it within the next 30 days.</p>
<p>Questions? Post them in the comments and I&#8217;ll try to answer.</p>
<ol class="footnotes">
<li id="fn1265235969557n">You <em>can</em> work remotely. [<a href="#fn1265235969557">back</a>]</li>
</ol>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4067&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/02/04/wordpress-helpcenter-is-hiring/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Twitter Tools 2.2.1</title>
		<link>http://alexking.org/blog/2010/01/28/twitter-tools-2-2-1</link>
		<comments>http://alexking.org/blog/2010/01/28/twitter-tools-2-2-1#comments</comments>
		<pubDate>Thu, 28 Jan 2010 15:24:53 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=4039</guid>
		<description><![CDATA[I&#8217;ve released a new version of Twitter Tools, my WordPress plugin that creates a full 2-way integration between your blog and your Twitter account.
This release addresses two bugs:

The use of the native json_decode() function, required by the changes in WordPress 2.9 (version 2.1) created a problem for users with servers running 32-bit PHP. The json_decode() [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve released a new version of Twitter Tools, my <a href="http://wordpress.org/" rel="external">WordPress</a> plugin that creates a full 2-way integration between your blog and your Twitter account.</p>
<p>This release addresses two bugs:</p>
<ol>
<li>The use of the native <code>json_decode()</code> function, required by the changes in WordPress 2.9 (version 2.1) created a problem for users with servers running 32-bit PHP. The <code>json_decode()</code> function treats the tweet ID field as an integer larger than it can handle, which causes the issues. Thanks to Joe Tortuga and Ciaran Walsh for sending in the fix. Of note: I haven&#8217;t had a chance to set up a 32-bit PHP install so I can&#8217;t reproduce this, but it appears to work for many based on <a href="http://wordpress.org/support/topic/312067/page/2?replies=46#post-1367438" rel="external">forum feedback</a>. Yep, I&#8217;m still dealing with the ramifications from <a href="http://alexking.org/blog/2010/01/13/wordpress-2-9-and-php-libraries">this</a>.</li>
<li>Typo-fix that should allow resetting digests properly (not sure when this broke). Thanks <a href="http://wordpress.org/support/topic/353221#post-1370388" rel="external">lionel_chollet</a>.</li>
</ol>
<p>The download and more information are available on my <a href="http://alexking.org/projects/wordpress">WordPress Plugins page</a>.</p>
<p>If you have any trouble with this, please contact the <a href="http://wphelpcenter.com">WordPress HelpCenter</a> (303-395-1346) or you can try the <a href="http://wordpress.org/support/" rel="external">WP Support Forums</a>.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=4039&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/01/28/twitter-tools-2-2-1/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WordPress 2.9 and PHP Libraries</title>
		<link>http://alexking.org/blog/2010/01/13/wordpress-2-9-and-php-libraries</link>
		<comments>http://alexking.org/blog/2010/01/13/wordpress-2-9-and-php-libraries#comments</comments>
		<pubDate>Wed, 13 Jan 2010 16:21:05 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3956</guid>
		<description><![CDATA[I recently put new releases of my Twitter Tools plugin &#8211; basically patches so that it would work in WordPress 2.9 on versions of PHP prior to 5.2. This is an interesting situation, where I hadn&#8217;t really done anything wrong in the plugin and the WP core team hadn&#8217;t really done anything wrong in the [...]]]></description>
			<content:encoded><![CDATA[<p>I recently put <a href="http://alexking.org/blog/2010/01/08/twitter-tools-and-wordpress-2-9-testing-needed">new</a> <a href="http://alexking.org/blog/2010/01/09/twitter-tools-2-1">releases</a> of my Twitter Tools plugin &#8211; basically patches so that it would work in WordPress 2.9 on versions of PHP prior to 5.2. This is an interesting situation, where I hadn&#8217;t really done anything wrong in the plugin and the WP core team hadn&#8217;t really done anything wrong in the way they implemented their JSON functionality for versions of PHP prior to 5.2. It just happened that the bits of code weren&#8217;t compatible with each other.</p>
<p>Sure it was frustrating. I was in a situation where there was a bit of public outcry about my plugin being &#8220;broken&#8221;. All of a sudden, something that used to work fine didn&#8217;t (for some). The result? I spent a good deal of time debugging an issue with my plugin that I didn&#8217;t cause and couldn&#8217;t reproduce.<sup><a href="#fn1263399092827n" id="fn1263399092827" class="footnote">1</a></sup> However when you step back and look at the situation, I&#8217;m not sure there is a clear-cut target to blame here. Everyone&#8217;s intentions were pure. The point is, this is an interesting case study and one that both the WP plugin and theme devs and the WP Core devs can learn from.</p>
<h3>Situation</h3>
<p>Versions of PHP prior to 5.2 do not include native functions for encoding and decoding JSON formatted data.</p>
<p>The solution in Twitter Tools prior to the releases last weekend: include a PHP library (Services_JSON) along with the plugin, wrap it in a check to make sure that it isn&#8217;t already included, and use it instead of the native PHP functions.</p>
<p>The solution in WordPress 2.9: define the equivalent versions of the native PHP encode and decode functions in the core, include a PHP library (Services_JSON) in those functions and load it if needed.</p>
<p>So we had a situation in some WordPress server configurations where my plugin loaded the library, then WP core tried to load the same library and PHP didn&#8217;t like that very much.</p>
<p>The WP 2.9 solution provides us with an interesting situation. I still wanted to support versions of WP prior to 2.9, which means I still need to include my copy of the library. However I also don&#8217;t want it to break in 2.9, so I need to make my inclusion of the library compatible with the WP 2.9 approach.</p>
<h3>Solution</h3>
<p>Use the same approach in my plugin that WP 2.9 does. WP 2.9 checks to see if the PHP function json_encode(), etc. exists, and defines it if it doesn&#8217;t. If Twitter Tools does the same thing and loads after the WP version (which is loaded from compat.php), it will only define those functions and include the library as needed. Based on feedback, this approach is working for both pre-2.9 versions of WordPress and WP 2.9.x.</p>
<h3>Lessons</h3>
<p>Plugin/theme devs, be careful when including a compatibility library that might get added to WP core in the future. Try to structure your code in such a way that it will continue to work even if this happens.</p>
<p>WP core devs, when adding a library consider the plugins that might already be including that library and do so in a way that lets everything continue to work.</p>
<p>Why wasn&#8217;t this caught in beta testing of WordPress 2.9? It&#8217;s pretty simple &#8211; even though I tested some of my plugins in pre-releases of 2.9, I did not test them with older versions of PHP (required to trigger this bug). I&#8217;m guessing that most of the developers that were beta testing were also running new versions of PHP. A true application testing matrix is not realistic for WordPress + plugins + themes.</p>
<p>Take a look at the <a href="http://plugins.trac.wordpress.org/changeset?new=191662@twitter-tools/branches/wp-2.9-compat/twitter-tools.php&#038;old=142484@twitter-tools/tags/2.0/twitter-tools.php" rel="external">diff</a> for an example, I think this technique is portable to other plugins that may experience this same problem.</p>
<p>Also, I created a <a href="http://core.trac.wordpress.org/ticket/11827" rel="external">ticket in Trac</a> to try to make this work a little more smoothly going forward. Thanks to the core team for accepting the patch.</p>
<ol class="footnotes">
<li id="fn1263399092827n">Trying to patch a problem that you can&#8217;t reproduce will inevitably require a few point release. <img src='http://alexking.org/wp/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  [<a href="#fn1263399092827">back</a>]</li>
</ol>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3956&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/01/13/wordpress-2-9-and-php-libraries/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Child Theme Support for Carrington CMS Theme Framework</title>
		<link>http://carringtontheme.com/2010/01/child-theme-support/</link>
		<comments>http://alexking.org/blog/2010/01/10/child-theme-support-for-carrington-cms-theme-framework#comments</comments>
		<pubDate>Sun, 10 Jan 2010 15:26:03 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3968</guid>
		<description><![CDATA[Child theme support has landed in SVN for Carrington. The way it is implemented allows child themes to add templates to the parent theme (adding more supported conditions for post types, comments, categories, etc.), not just replace existing templates. If you are building themes on Carrington, check this out and provide feedback before it&#8217;s tagged [...]]]></description>
			<content:encoded><![CDATA[<p>Child theme support has landed in SVN for Carrington. The way it is implemented allows child themes to add templates to the parent theme (adding more supported conditions for post types, comments, categories, etc.), not just replace existing templates. If you are building themes on Carrington, check this out and provide feedback before it&#8217;s tagged and released.
<p><a href="http://alexking.org/blog/2010/01/10/child-theme-support-for-carrington-cms-theme-framework">#</a> | <a href="http://carringtontheme.com/2010/01/child-theme-support/">Visit Site &raquo;</a></p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3968&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/01/10/child-theme-support-for-carrington-cms-theme-framework/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter Tools 2.1</title>
		<link>http://alexking.org/blog/2010/01/09/twitter-tools-2-1</link>
		<comments>http://alexking.org/blog/2010/01/09/twitter-tools-2-1#comments</comments>
		<pubDate>Sat, 09 Jan 2010 23:48:06 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3959</guid>
		<description><![CDATA[Version 2.1 of my Twitter Tools plugin is now available. Twitter Tools creates a two-way integration between your Twitter account and your WordPress blog. You can send your blog posts to Twitter and bring your tweets back to your blog for display, archiving, or creating posts from them.
This version has a bunch of changes including [...]]]></description>
			<content:encoded><![CDATA[<p>Version 2.1 of my Twitter Tools plugin is now available. Twitter Tools creates a two-way integration between your Twitter account and your WordPress blog. You can send your blog posts to Twitter and bring your tweets back to your blog for display, archiving, or creating posts from them.</p>
<p>This version has a bunch of changes including a fix for the <a href="http://alexking.org/blog/2010/01/08/twitter-tools-and-wordpress-2-9-testing-needed">issues with WordPress 2.9 and PHP &lt; 5.2</a>.</p>
<p>The download and more information are available on my <a href="http://alexking.org/projects/wordpress">WordPress Plugins page</a>.</p>
<p>If you have any trouble with this, please contact the <a href="http://wphelpcenter.com">WordPress HelpCenter</a> (303-395-1346) or you can try the <a href="http://wordpress.org/support/" rel="external">WP Support Forums</a>.</p>
<p>Enjoy!</p>
<h3>Changes</h3>
<ul>
<li>Add a shortcode to display recent tweets</li>
<li>Change how Services_JSON is included to be compatible with changes in WP 2.9 and PHP < 5.2</li>
<li>Better RegEx for username and hashtag linking</li>
<li>Exclude replies in aktt_latest_tweet() function (if option selected)</li>
<li>Digest functionality is marked as experimental, they need to be fundamentally rewritten to avoid race conditions experienced by some users</li>
<li>Make install code a little smarter</li>
<li>Add unique index on tweet ID columns, remove duplicates and optimize table</li>
<li>Track the currently installed version for easier upgrades in the future</li>
<li>Add action on Update Tweets (aktt_update_tweets)</li>
<li>Use standard meta boxes (not backwards compatible) for post screen settings</li>
<li>Use site_url() and admin_url(), losing backward compatibility but gaining SSL compatibility</li>
<li>Added WordPress HelpCenter contact info to settings page</li>
<li>Misc code cleanup and bug fixes</li>
<li>Added language dir and .pot file</li>
</ul>
<p>Bit.ly plugin</p>
<ul>
<li>Added a trim() on the API Key for people that struggle with copy/paste</li>
<li>Changed RegEx for finding URLs in tweet content (thanks Porter Maus)</li>
<li>Added a j.mp option</li>
<li>Cleaned up the settings form</li>
<li>Use admin_url(), losing backward compatibility but gaining SSL compatibility</li>
</ul>
<p>Exclude Category plugin</p>
<ul>
<li>Use admin_url(), losing backward compatibility but gaining SSL compatibility</li>
</ul>
<p>Hashtags plugin</p>
<ul>
<li>Use admin_url(), losing backward compatibility but gaining SSL compatibility</li>
</ul>
<h3>Plugins</h3>
<p>In <a href="http://alexking.org/blog/2009/08/03/twitter-tools-2-0">version 2.0</a> I added the ability for Twitter Tools to be extended via plugins and created the plugins included in the default plugin. Other folks are creating plugins for Twitter Tools as well. You can find <a href="http://delicious.com/alexkingorg/twitter-tools+plugin" rel="external">more Twitter Tools plugins here</a>.</p>
<p>Have you created a plugin for Twitter Tools? Let me know so I can add it to the list.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3959&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/01/09/twitter-tools-2-1/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Twitter Tools and WordPress 2.9 Testing Needed</title>
		<link>http://alexking.org/blog/2010/01/08/twitter-tools-and-wordpress-2-9-testing-needed</link>
		<comments>http://alexking.org/blog/2010/01/08/twitter-tools-and-wordpress-2-9-testing-needed#comments</comments>
		<pubDate>Fri, 08 Jan 2010 22:36:01 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3949</guid>
		<description><![CDATA[Based on the feedback from my previous post, I think I know what the issue may be between Twitter Tools 2.0 and WordPress 2.9.
I have a new version available that may address the issue that some people were having saving posts with Twitter Tools enabled in WordPress 2.9.
I believe the cause of this issue is [...]]]></description>
			<content:encoded><![CDATA[<p>Based on the feedback from my <a href="http://alexking.org/blog/2010/01/04/twitter-tools-and-wordpress-2-9-working-or-not">previous post</a>, I think I know what the issue may be between Twitter Tools 2.0 and WordPress 2.9.</p>
<p>I have a new version available that may address the issue that some people were having saving posts with Twitter Tools enabled in WordPress 2.9.</p>
<p>I believe the cause of this issue is as described in <a href="http://core.trac.wordpress.org/ticket/11827" rel="external">this ticket</a>. Basically, a change in WordPress core in 2.9 was incompatible with some plugins that included the same JSON library.</p>
<p>I have not been able to fully test this and would like your help in doing so. If you have experienced these problems, <del>please download this testing version, and let me know your results in the comments</del>. Thanks!</p>
<p>UPDATE: Get <a href="http://alexking.org/blog/2010/01/09/twitter-tools-2-1">version 2.1.x</a> which has the same fix.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3949&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/01/08/twitter-tools-and-wordpress-2-9-testing-needed/feed</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>WordPress Security, Upgrades and Backups</title>
		<link>http://alexking.org/blog/2010/01/08/wordpress-security-upgrades-backups</link>
		<comments>http://alexking.org/blog/2010/01/08/wordpress-security-upgrades-backups#comments</comments>
		<pubDate>Fri, 08 Jan 2010 14:57:58 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[BackupMoxie]]></category>
		<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3642</guid>
		<description><![CDATA[I often get questions about WordPress security and how best to manage WordPress upgrades. These issues are closely related, and I&#8217;ve thought about them a good deal over the years (and I&#8217;ve been doing this long enough to have experimented with a variety of approaches). These are the approaches I am currently using and recommend [...]]]></description>
			<content:encoded><![CDATA[<p>I often get questions about WordPress security and how best to manage WordPress upgrades. These issues are closely related, and I&#8217;ve thought about them a good deal over the years (and I&#8217;ve been doing this long enough to have experimented with a variety of approaches). These are the approaches I am currently using and recommend for the technically savvy.</p>
<p>First, a high level summary:</p>
<ul>
<li>Upgrade immediately. Always. No exceptions.</li>
<li>Have a development/staging copy of your site to test upgrades on before upgrading your live web site.</li>
<li>Do check out your copy of WordPress from SVN (use the current branch) on your production web site.</li>
<li>Do <strong>not</strong> run a production web site on WordPress SVN trunk.</li>
<li>Backups are critical (snapshot backups highly recommended); they are your best defense against security issues and upgrade problems.</li>
</ul>
<p>Ok, now for the detailed discussion&#8230;</p>
<h3>Security</h3>
<p>WordPress security has been a hot-button topic this year. The security vulnerabilities that surfaced in WordPress releases last year were unfortunate, but some were due in part to a systematic approach to try to <em>improve</em> security in WordPress by standardizing how security functions work throughout the code base.</p>
<p>I&#8217;ve seen comments that WordPress doesn&#8217;t care about security; I think that&#8217;s an ignorant statement. The WordPress developers I know care deeply about the quality of WordPress and are constantly working to improve it.</p>
<p>Historical security is not (necessarily) a good indicator of future security.</p>
<p>While I do believe &#8220;those that do not learn from history are doomed to repeat it&#8221;, I do not believe that you can accurately predict future security concerns based on the security bugs in the past. In Open Source there is the additional issue of new developers bringing new coding styles and blind spots along with their code contributions. Open Source requires everyone to be diligent for security issues. It&#8217;s a battle you must always fight, but will never win.</p>
<p>A quick note about the WordPress codebase: it&#8217;s important to consider where WordPress came from. The WordPress codebase isn&#8217;t architecturally elegant, but it&#8217;s improving with every release. The codebase was initially inherited from b2, and certain development approaches and code paths from that code (written back in 2001-2002) are still present today (for compatibility reasons). I&#8217;ve been impressed over the last few years how certain backward compatibility features have been maintained while the underlying code has been completely gutted and rewritten. That&#8217;s not easy.</p>
<p>I haven&#8217;t spoken to anyone on the core dev team about this yet, but I think that the 3.0 release (WP &#8211; WPMU merge) is probably the right time to break a few things in favor of consistency for the future. I&#8217;m sure that&#8217;s a discussion that is already taking place.</p>
<p>Here are some simple tips that may help with security going forward:</p>
<ul>
<li>The best way to be hacker-proof is to upgrade immediately and have great backups (more on backups later).</li>
<li>Turn off features you don&#8217;t need or use. This includes user registration, XML-RPC, etc.</li>
<li>Use only the plugins you need, and consider the source when adding any feature (plugin or theme) to your site.</li>
<li>Remove plugins and themes that are not active.</li>
<li>Add 401 authentication to your wp-admin directory.</li>
<li>Use SSL when connecting to your admin interface.<sup><a href="#fn1256696457069n" id="fn1256696457069" class="footnote">2</a></sup></li>
</ul>
<h3>Upgrades</h3>
<p>New features bring new bugs, and some of those will undoubtedly have security ramifications. The best way to combat this is to upgrade immediately when a new version is available. I upgraded four WordPress installs in three minutes this morning &#8211; it&#8217;s easy if you set them up right.</p>
<p>The approach I use won&#8217;t work for everyone as it relies on developer tools that not all WordPress users are familiar or comfortable with. If Subversion (SVN) is meaningless or scary to you, I recommend sticking with the auto-upgrade or working with someone who can provide the appropriate technical skills to use the approach outlined here (the <a href="http://wphelpcenter.com/" rel="external">WordPress HelpCenter</a> is a great option for this).</p>
<p>The WordPress codebase is hosted in a publicly accessible SVN repository &#8211; you want to use that. The SVN repository is organized in a <a href="http://stackoverflow.com/questions/16142/what-do-branch-tag-and-trunk-really-mean" rel="external">traditional manner</a> providing us with a variety of options for what code we want to use.</p>
<p>I recommend checking out the current branch of WordPress and using that for your web site. The benefit of using a branch is that you can simply <code>svn up</code> to update to the latest patch release. If you replace the plugins and themes directories with your own SVN checkouts (as I do on some sites), you will want to use a more selective command for your update:</p>
<p><code>svn up *.php wp-admin/ wp-includes/</code></p>
<p>That will get you all the latest code, without affecting the wp-content directories (plugins and themes). Branches are pretty safe &#8211; typically the only changes in a branch are to apply the bug fixes and security patches that comprise the point releases for that branch.</p>
<p>If you want to automate your updates using CRON to pull from SVN, this is the process I recommend.</p>
<p>Some folks advocate using tags (the official WordPress releases) exclusively. There is certainly an argument for this, however the <code>svn switch</code> command used to change between tags (and branches, for major releases) is not as easy as the update command on a branch (especially if you&#8217;re replacing versioned directories like wp-content/plugins and wp-content/themes in your checkout).</p>
<p>I&#8217;ve seen other people advocate running on trunk. <strong>This is madness!</strong> Trunk is where new bugs and security vulnerabilities are written &#8211; you do not want to be running trunk. We&#8217;ve been having data loss issues<sup><a href="#fn1256276106728n" id="fn1256276106728" class="footnote">1</a></sup> on an internal site of ours that currently runs on trunk.</p>
<p>I strongly recommend that any upgrade be tested on a development or local environment before performing the upgrade on your live web site. The importance of this varies from site to site, but if you&#8217;re running a significant site on WordPress (like some of the ones we&#8217;ve built at <a href="http://crowdfavorite.com">Crowd Favorite</a>), you can&#8217;t afford to have your site down because some change in the new release introduces an incompatibility with your configuration or custom code.</p>
<p>So that takes care of upgrading WordPress, what about plugins and themes? It&#8217;s true that some WordPress upgrades will break plugins and themes. However, that doesn&#8217;t mean you shouldn&#8217;t upgrade. If a plugin or theme breaks, you should contact the developer and see if they plan to upgrade the plugin or theme. If they don&#8217;t, you may be able to bribe them. If they still won&#8217;t, you can see if someone else will do it, or move on. No plugin or theme is more important than your site&#8217;s security.</p>
<p>Having a good, deep knowledge of how WordPress works and interacting with it in the proper way will allow you to write plugins and themes that hum along smoothly after a WordPress upgrade in most instances, but you should still test in a non-critical environment.</p>
<p>It&#8217;s important to note the position that plugin and theme developers are in with WordPress upgrades as well. When a plugin or theme breaks in a new version of WordPress, it&#8217;s not <em>always</em> the developer&#8217;s fault. Sometimes a plugin or theme is poorly written and does not follow WordPress coding standards &#8211; sometimes the standards that are to be followed are more recent than the plugin or theme in question. The recent change to how widgets are to be coded is a great example. The best practices are constantly evolving, and it can be a challenge to keep up with them all.</p>
<p>I currently have 28 plugins and 3 themes <a href="http://profiles.wordpress.org/alexkingorg" rel="external">registered on wordpress.org</a>. When a new version of WordPress is released, it&#8217;s a tall order to test and patch all of these. There are typically 4 major WordPress releases scheduled each year. </p>
<p><em>If I did a full test and patch cycle (1/3 day-1 day each) of every plugin and theme I have released with every major release, I&#8217;d be spending 4 months a year just testing and patching my plugins and themes.</em></p>
<p>That isn&#8217;t something I&#8217;m in position to do, and other plugin and theme developers are in similar positions (to varying degrees).</p>
<p>Additionally, the plugin and theme system of WordPress is in essence a security feature as well. Because of the ability to customize WordPress without making modifications to the core codebase, you can upgrade without having to go through and apply all of your modifications to the new codebase.</p>
<h3>Backups</h3>
<p>In the event your site is hacked or an upgrade goes south (or really if anything bad happens), your best defense is having great backups.</p>
<p>RSYNC is a great tool, but if you are using RSYNC exclusively for your backups it&#8217;s likely you aren&#8217;t doing enough. RSYNC will keep a mirror copy of whatever you tell it to back up &#8211; this means that if something bad happens on your site, the same thing will be mirrored to your RSYNC backup. There are a bunch of ways to mitigate this &#8211; if you are a do-it-yourselfer you are likely already brainstorming a few decent work-arounds. Almost all of these break down if the hack is undetected for a long period of time (a week or two) as staggered RSYNC solutions don&#8217;t typically extend that long.</p>
<p>I think the best solution is snapshot backups, going back a reasonable amount of time into the past. This will allow you to pick a known, good point in time to revert to. Test locally, and restore your production site.</p>
<p>During a <a href="http://alexking.org/blog/2009/09/05/wordpress-security-upgrade-help">recent security upgrade rush</a> at <a href="http://wphelpcenter.com">WordPress HelpCenter</a> we discovered that many people who thought they had good backups from their hosting providers, didn&#8217;t. It&#8217;s important that your backups are both monitored and verified for integrity.</p>
<p>Recovery time is important as well. You want a system that allows you (or your recovery team) to get your backups up and running again quickly. Speed is a big issue when your site is down, and having to apply differential backups to do a restore can be very time consuming.</p>
<p>We created <a href="http://backupmoxie.com">BackupMoxie</a> because we needed a service that worked this way for our clients at <a href="http://crowdfavorite.com">Crowd Favorite</a>. If you are interested in offering BackupMoxie as a service to your clients, I&#8217;ve got good news for you. Next week we are officially launching it as a <a href="http://backupmoxie.com/whitelabel">white label service</a>.</p>
<h3>Conclusion</h3>
<p>Hopefully this (lengthy) discussion has been helpful for some of you.</p>
<p>In thinking about these issues and in the development my team and I have done over the last few years, I&#8217;ve considered a number of ideas that I think could be helpful to the WordPress community. I&#8217;m working on an outline for an idea that I think may have some merit for a follow-up post.</p>
<ol class="footnotes">
<li id="fn1256276106728n">Still need to try to debug them and submit a patch, actually. [<a href="#fn1256276106728">back</a>]</li>
<li id="fn1256696457069n">Support for this is relatively recent, not all plugins and themes (including mine) support this properly yet. [<a href="#fn1256696457069">back</a>]</li>
</ol>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3642&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/01/08/wordpress-security-upgrades-backups/feed</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Twitter Tools and WordPress 2.9 &#8211; Working or Not?</title>
		<link>http://alexking.org/blog/2010/01/04/twitter-tools-and-wordpress-2-9-working-or-not</link>
		<comments>http://alexking.org/blog/2010/01/04/twitter-tools-and-wordpress-2-9-working-or-not#comments</comments>
		<pubDate>Mon, 04 Jan 2010 22:08:32 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3933</guid>
		<description><![CDATA[A bunch of folks in the WordPress support forums appear to be having trouble with Twitter Tools with WordPress 2.9. It works as expected in my testing, the WordPress HelpCenter hasn&#8217;t been able to reproduce this either, and the works/broken voting on the plugin page is fairly evenly split.
I&#8217;d love to gather some explicit bug [...]]]></description>
			<content:encoded><![CDATA[<p>A bunch of folks in the WordPress support forums appear to be having trouble with Twitter Tools with WordPress 2.9. It works as expected in my testing, the <a href="http://wphelpcenter.com">WordPress HelpCenter</a> hasn&#8217;t been able to reproduce this either, and the <a href="http://wordpress.org/extend/plugins/twitter-tools/" rel="external">works/broken voting on the plugin page</a> is fairly evenly split.</p>
<p>I&#8217;d love to gather some explicit bug reports (this thing breaks here, this code on line X appears to fail, works with all other plugins turned off but not with plugin Y enabled as well, etc.) and/oor access (both WP admin and file editing) to an environment where this is  <img src="http://alexking.org/images/smilies/ak_scare1.gif" alt=":scare:" class="wp-smiley" />  breaking  <img src="http://alexking.org/images/smilies/ak_scare2.gif" alt=":/scare:" class="wp-smiley" />  consistently with WP 2.9 and previously worked with WP 2.8.x.</p>
<p>If you use Twitter Tools, could you take a moment to <a href="http://wordpress.org/extend/plugins/twitter-tools/" rel="external">vote if it works for you with WordPress 2.9</a>?<sup><a href="#fn1262643118144n" id="fn1262643118144" class="footnote">1</a></sup></p>
<p>Thanks in advance.</p>
<p>UPDATE: Interesting &#8211; when I posted this the vote was 12 working vs. 17 broken. The current vote is now 31 working to 20 broken. So far since I posted this another 22 votes have been cast and 19 of them indicate it is working. This seems to be far from a widespread issue, which probably helps explain why no one I know can reproduce it.</p>
<ol class="footnotes">
<li id="fn1262643118144n">I realize that this type of call to action will by nature result in more unhapy voters (more &#8220;broken&#8221; votes) than otherwise &#8211; this is the nature of such things. [<a href="#fn1262643118144">back</a>]</li>
</ol>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3933&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2010/01/04/twitter-tools-and-wordpress-2-9-working-or-not/feed</wfw:commentRss>
		<slash:comments>26</slash:comments>
		</item>
		<item>
		<title>WordPress 2.9 Upgrade</title>
		<link>http://alexking.org/blog/2009/12/21/wordpress-2-9-upgrade</link>
		<comments>http://alexking.org/blog/2009/12/21/wordpress-2-9-upgrade#comments</comments>
		<pubDate>Mon, 21 Dec 2009 19:04:04 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3889</guid>
		<description><![CDATA[WordPress 2.9 has been released &#8211; time to upgrade! There are some pretty nice new features in this release. I&#8217;m glad to be able to retire a few plugins now that the post thumbnail feature is built in and we&#8217;re going to wear out the comment meta feature in our custom implementations.
I&#8217;ve got a lot [...]]]></description>
			<content:encoded><![CDATA[<p>WordPress 2.9 has been released &#8211; time to upgrade! There are some pretty <a href="http://wordpress.org/development/2009/12/wordpress-2-9/" rel="external">nice new features</a> in this release. I&#8217;m glad to be able to retire a few plugins now that the post thumbnail feature is built in and we&#8217;re going to wear out the comment meta feature in our custom implementations.</p>
<p>I&#8217;ve got a lot of sites to upgrade &#8211; I&#8217;ll have a little more on the process I use for this in a follow-up post.</p>
<p>If you need help with your upgrade, our team at <a href="http://wphelpcenter.com">WordPress HelpCenter</a> is available and happy to help. Give us a call: (303) 395-1346 or email help@wphelpcenter.com.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3889&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2009/12/21/wordpress-2-9-upgrade/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WordPress HelpCenter now staffed by Crowd Favorite</title>
		<link>http://alexking.org/blog/2009/12/07/wordpress-helpcenter-staffed-by-crowd-favorite</link>
		<comments>http://alexking.org/blog/2009/12/07/wordpress-helpcenter-staffed-by-crowd-favorite#comments</comments>
		<pubDate>Mon, 07 Dec 2009 14:48:26 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3823</guid>
		<description><![CDATA[We&#8217;ve restructured WordPress HelpCenter a little bit, and it is now fully run by Crowd Favorite and staffed by Crowd Favorite developers. This change is due to how the business has evolved as it&#8217;s grown, and what we believe will allow it to flourish going forward.
We have a:

new phone number1: (303) 395-1346
and new hours: 9am-5pm [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve restructured <a href="http://wphelpcenter.com">WordPress HelpCenter</a> a little bit, and it is now fully run by <a href="http://crowdfavorite.com">Crowd Favorite</a> and staffed by Crowd Favorite developers. This change is due to how the business has evolved as it&#8217;s grown, and what we believe will allow it to flourish going forward.</p>
<p>We have a:</p>
<ul>
<li>new phone number<sup><a href="#fn1260197204354n" id="fn1260197204354" class="footnote">1</a></sup>: <strong>(303) 395-1346</strong></li>
<li>and new hours: <strong>9am-5pm US/Pacific</strong></li>
</ul>
<p>as well.</p>
<p>While we are continuing to focus on providing top notch support and customer service for the community, we have added more development experience on the day-to-day team. This allows us to provide expanded on-demand development and customization services as well as offering support and troubleshooting services.</p>
<p>I&#8217;d also like to thank all of the plugin developers, theme authors and other affiliates that are <a href="http://alexking.org/blog/2009/10/28/wordpress-helpcenter-affiliate-program">working with us</a> &#8211; we really appreciate your partnership. If you create plugins and/or themes for WordPress, be sure to sign up for our <a href="http://wphelpcenter.com/affiliates/" rel="external">affiliate program</a> and register them with us so we can give you a little reward when we work with something you&#8217;ve built.</p>
<ol class="footnotes">
<li id="fn1260197204354n">The old number will continue to work for a few months. [<a href="#fn1260197204354">back</a>]</li>
</ol>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3823&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2009/12/07/wordpress-helpcenter-staffed-by-crowd-favorite/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WPWeekly Episode 79 – Alex King And WPHelpCenter</title>
		<link>http://www.wptavern.com/wpweekly-episode-79-%E2%80%93-alex-king-and-wphelpcenter</link>
		<comments>http://alexking.org/blog/2009/11/18/wpweekly-episode-79-%e2%80%93-alex-king-and-wphelpcenter#comments</comments>
		<pubDate>Wed, 18 Nov 2009 18:16:52 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Links]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3790</guid>
		<description><![CDATA[I enjoyed my podcast with Jeff last night on WordPress Weekly.
We discussed the WordPress HelpCenter, the Carrington CMS theme framework and a little about Open Source business models.
You can download the MP3 file here.
# &#124; Visit Site &#187;
]]></description>
			<content:encoded><![CDATA[<p>I enjoyed <a href="http://www.wptavern.com/wpweekly-episode-79-%e2%80%93-alex-king-and-wphelpcenter" rel="external">my podcast with Jeff last night</a> on <a href="http://www.wptavern.com/category/wordpress-weekly" rel="external">WordPress Weekly</a>.</p>
<p>We discussed the <a href="http://wphelpcenter.com">WordPress HelpCenter</a>, the <a href="http://carringtontheme.com">Carrington CMS theme framework</a> and a little about Open Source business models.</p>
<p>You can <a href="http://recordings.talkshoe.com/TC-34224/TS-293892.mp3" rel="external">download the MP3 file here</a>.
<p><a href="http://alexking.org/blog/2009/11/18/wpweekly-episode-79-%e2%80%93-alex-king-and-wphelpcenter">#</a> | <a href="http://www.wptavern.com/wpweekly-episode-79-%E2%80%93-alex-king-and-wphelpcenter">Visit Site &raquo;</a></p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3790&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2009/11/18/wpweekly-episode-79-%e2%80%93-alex-king-and-wphelpcenter/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
<enclosure url="http://recordings.talkshoe.com/TC-34224/TS-293892.mp3" length="36715702" type="audio/mpeg" />
		</item>
		<item>
		<title>Appearing on WordPress Weekly (next week)</title>
		<link>http://alexking.org/blog/2009/11/12/appearing-on-wordpress-weekly-next-week</link>
		<comments>http://alexking.org/blog/2009/11/12/appearing-on-wordpress-weekly-next-week#comments</comments>
		<pubDate>Fri, 13 Nov 2009 05:22:48 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3766</guid>
		<description><![CDATA[I&#8217;m going to be on the WordPress Weekly podcast next Tuesday (dialing in from the Bay Area, hopefully will find a spot for the interview that will work OK). There is a thread at WP Tavern for people to post questions they&#8217;d like to hear me discuss.
I think there are a lot of very interesting [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m going to be on the <a href="http://www.wptavern.com/wordpress-weekly" rel="external">WordPress Weekly</a> podcast next Tuesday (dialing in from the Bay Area, hopefully will find a spot for the interview that will work OK). There is a thread at WP Tavern for people to <a href="http://www.wptavern.com/forum/general-wordpress/993-help-me-interview-alex-king.html" rel="external">post questions they&#8217;d like to hear me discuss</a>.</p>
<p>I think there are a lot of very interesting things to cover about the new <a href="http://alexking.org/blog/2009/10/28/wordpress-helpcenter-affiliate-program">affiliate program from the WordPress HelpCenter</a>, monetization and supporting the WordPress development community. So far it looks like some folks would like to hear about <a href="http://carringtontheme.com">Carrington</a> as well &#8211; I&#8217;ll be happy to try cover that as well.</p>
<p>Feel free to post questions in the comments here if you like and I&#8217;ll pass them along.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3766&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2009/11/12/appearing-on-wordpress-weekly-next-week/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>WordPress HelpCenter Shares Revenue and Knowledge</title>
		<link>http://alexking.org/blog/2009/10/28/wordpress-helpcenter-affiliate-program</link>
		<comments>http://alexking.org/blog/2009/10/28/wordpress-helpcenter-affiliate-program#comments</comments>
		<pubDate>Wed, 28 Oct 2009 17:34:33 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3703</guid>
		<description><![CDATA[We&#8217;ve launched an affiliate program and a public knowledge base at WordPress HelpCenter (WPHC), two things that I&#8217;m very excited about. We&#8217;re getting closer and closer to my overall vision for the service.

Affiliate Program
The affiliate program is really core to how we want the HelpCenter to work (note: anyone can join the affiliate program). It [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;ve launched an <a href="http://wphelpcenter.com/affiliates/">affiliate program</a> and a public knowledge base at <a href="http://wphelpcenter.com">WordPress HelpCenter</a> (WPHC), two things that I&#8217;m very excited about. We&#8217;re getting closer and closer to my overall vision for the service.</p>
<p class="center"><a href="http://www.flickr.com/photos/alexkingorg/4053548762/" title="New Home Page by alexkingorg, on Flickr"><img src="http://farm3.static.flickr.com/2777/4053548762_a779bb6442_m.jpg" width="240" height="234" alt="New Home Page" /></a></p>
<h3>Affiliate Program</h3>
<p>The affiliate program is really core to how we want the HelpCenter to work (note: anyone can join the affiliate program). It creates a formal relationship between WPHC and plugin and theme authors so that we can support the great WordPress development community. It sets up:</p>
<ul>
<li>WPHC to pay plugin and theme authors when we do paid work with plugins or themes they created.</li>
<li>Makes it easy for plugin and theme authors give us FAQs and tips about the things they have built so that we can provide great support for them.</li>
<li>Builds relationships with plugin and theme authors so we can send them bug reports and contact them with advanced issues we are dealing with.</li>
<li>Rewards affiliates for referring business to us.</li>
</ul>
<p class="center"><a href="http://www.flickr.com/photos/alexkingorg/4053557146/" title="Affiliate Account by alexkingorg, on Flickr"><img src="http://farm3.static.flickr.com/2485/4053557146_5e5b2568e6_m.jpg" width="240" height="233" alt="Affiliate Account" /></a></p>
<p>We have a collection of badges that plugin and theme authors can place on their web sites and in the WordPress admin pages for their plugins and themes to direct people to the WordPress HelpCenter to get support (and earn affiliate payments).</p>
<p class="center"><a href="http://www.flickr.com/photos/alexkingorg/4052816919/" title="WordPress Admin Badge by alexkingorg, on Flickr"><img src="http://farm3.static.flickr.com/2555/4052816919_8914fa1016_m.jpg" width="240" height="232" alt="WordPress Admin Badge" /></a></p>
<p>We also have released a <a href="http://wordpress.org/extend/plugins/wphelpcenter/" rel="external">WordPress plugin</a> that does two things:</p>
<ol>
<li>it adds a WordPress HelpCenter support tab to the admin interface to make it easy for people to contact WPHC for support.</li>
<li>It creates a system profile that details key information about a WordPress installation that is very useful in troubleshooting and debugging. This system profile can be sent to WordPress HelpCenter.</li>
</ol>
<p>Affiliates can download a customized version of this plugin that includes their affiliate code so that they receive a referral payment in addition to any payments for work we do with plugins and themes they have registered with us.</p>
<p class="center"><a href="http://www.flickr.com/photos/alexkingorg/4053576486/" title="HelpCenter tab by alexkingorg, on Flickr"><img src="http://farm3.static.flickr.com/2689/4053576486_59490be96b_m.jpg" width="240" height="111" alt="HelpCenter tab" /></a></p>
<p>We think that this may be something that plugin and theme authors may want to distribute along with their work. Additionally, developers that create WordPress powered sites but may not be in position to provide on-call support for them may want to install this on sites they create for their clients.</p>
<p>The system profile page created by the plugin uses standard WordPress filters to enable plugin and theme authors to add information to it that may be relevant for their plugins or themes.</p>
<p class="center"><a href="http://www.flickr.com/photos/alexkingorg/4052835889/" title="System Profile by alexkingorg, on Flickr"><img src="http://farm3.static.flickr.com/2743/4052835889_c148d49133_m.jpg" width="240" height="104" alt="System Profile" /></a></p>
<p>I&#8217;m really excited about the affiliate program because it provides a monetary reward for plugin and theme developers while actually removing a burden from them and potentially freeing them up to spend more time building great things for the WordPress community.</p>
<p>Over the years I&#8217;ve thought and brainstormed quite a bit about ways to provide financial incentives for WordPress developers. Our affiliate program is a start. It&#8217;s a true win-win arrangement, and it will only get better as the WordPress community continues to grow.</p>
<h3>Public Knowledge Base</h3>
<p class="center"><a href="http://www.flickr.com/photos/alexkingorg/4053576418/" title="Public Knowledge Base by alexkingorg, on Flickr"><img src="http://farm4.static.flickr.com/3533/4053576418_802e93bbec_m.jpg" width="239" height="240" alt="Public Knowledge Base" /></a></p>
<p>The public knowledge base is another core element to WPHC and our vision of what we want it to be. We do troubleshooting and debugging of WordPress, plugin and theme issues every day, and this gives us a way to share the solutions we find with the community.</p>
<p>In addition to our own notes, when affiliates register plugins and themes with us they have the opportunity to add FAQs and tips about those plugins and themes. As appropriate, we then make that information publicly available.</p>
<p>Even better, the affiliates can come back and add additional FAQs and tips at any time. This is something I&#8217;m really excited about because the way that plugin README files work, they always lag one release behind on wordpress.org.</p>
<p>We have a section on the site for <a href="http://wphelpcenter.com/plugins/">plugins</a> and for <a href="http://wphelpcenter.com/themes/">themes</a>. There are a few resources up there now, I&#8217;m looking forward to watching these areas grow in the future as more affiliates sign up and register their plugins and themes with us.</p>
<p>I expect this to become a very useful resource for the WordPress community; one that grows nicely over time.</p>
<hr />
<p>I view the WPHC from several different perspectives.</p>
<ul>
<li>As the founder and a partner in the business, I want it to be financially viable so that we can maintain a great staff and provide top notch service.</li>
<li>As a WordPress professional, I need it to be a place I trust and feel comfortable referring my clients to for support.</li>
<li>As a WordPress developer, I want users of my plugins and themes to be able to get great support. I also know that with the growth of the WordPress community and the responsibilities I currently enjoy, I am no longer in a position to provide that support directly.</li>
</ul>
<p>From all of these perspectives, it is of paramount importance to me that the WordPress HelpCenter be a shining and trusted member of the WordPress community. The team and I are very committed to making that happen.</p>
<p>If we are able to continue to build it as we envision, the WordPress HelpCenter will be a great asset to the entire WordPress community. With these new features, I believe we&#8217;ve taken a few big steps in that direction.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3703&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2009/10/28/wordpress-helpcenter-affiliate-program/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Chain Reaction</title>
		<link>http://alexking.org/blog/2009/10/27/chain-reaction</link>
		<comments>http://alexking.org/blog/2009/10/27/chain-reaction#comments</comments>
		<pubDate>Tue, 27 Oct 2009 18:13:35 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[alexking.org]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3725</guid>
		<description><![CDATA[I&#8217;ve experienced a weird and unfortunate chain reaction over the last 48 hours.

A flood of comment spam
Akismet not accepting connections from my server1 and/or not catching the spam. UPDATE: this wasn&#8217;t Akismet&#8217;s fault, see bottom of post.
The email notifications from all the spam comments sending to my mail account
My mail host started blocking all mail [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve experienced a weird and unfortunate chain reaction over the last 48 hours.</p>
<ol>
<li>A flood of comment spam</li>
<li>Akismet not accepting connections from my server<sup><a href="#fn1256666024260n" id="fn1256666024260" class="footnote">1</a></sup> and/or not catching the spam. <strong>UPDATE:</strong> this wasn&#8217;t Akismet&#8217;s fault, see bottom of post.</li>
<li>The email notifications from all the spam comments sending to my mail account</li>
<li>My mail host started blocking all mail from my server (due to the high volume of comment spam)</li>
</ol>
<p>This has presented me with a choice between receiving email and accepting comments on this site, and that&#8217;s an easy choice.</p>
<p>I disabled comments, and once the flow of spam mails stopped my mail host seems to be accepting mail again. It&#8217;s sad to see the problems caused by comment spam extending beyond the annoyance of having them appear on your blog.<sup><a href="#fn1256667175104n" id="fn1256667175104" class="footnote">2</a></sup></p>
<p>I&#8217;m taking some additional steps to try to get the mail situation set up a little better (domain migration so I have better DNS control, sending mail directly to Google Apps and then forwarding to my primary mail account from there). I&#8217;m hopeful that I can get the Akismet connection issues resolved and enable comments again in the near future.</p>
<p>Regardless, it&#8217;s been a genuine pain in the arse having to deal with this. Apologies for the impact it&#8217;s had on anyone looking to comment here and/or receiving emails from my server.</p>
<p>UPDATE: re-enabling comments, hoping for the best.</p>
<p>UPDATE #2: the inability to reach Akismet appears to have been due to a firewall issue on my server (no blame should be placed on Akismet).</p>
<ol class="footnotes">
<li id="fn1256666024260n">It allows connections at times, but then doesn&#8217;t for long periods of time. [<a href="#fn1256666024260">back</a>]</li>
<li id="fn1256667175104n">They can also cause server scalability issues. [<a href="#fn1256667175104">back</a>]</li>
</ol>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3725&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2009/10/27/chain-reaction/feed</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>WordPress HelpCenter is Hiring</title>
		<link>http://alexking.org/blog/2009/10/14/wordpress-helpcenter-is-hiring</link>
		<comments>http://alexking.org/blog/2009/10/14/wordpress-helpcenter-is-hiring#comments</comments>
		<pubDate>Wed, 14 Oct 2009 20:37:54 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Crowd Favorite]]></category>
		<category><![CDATA[News]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://alexking.org/?p=3690</guid>
		<description><![CDATA[The WordPress HelpCenter is hiring another web developer. Due to the nature of the work we do at the HelpCenter, we&#8217;re looking for someone with a broad range of PHP, XHTML and CSS experience and in particular someone with outstanding communication skills.
This will be a full time position with benefits, and we are open to [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://wphelpcenter.com">WordPress HelpCenter</a> is hiring another web developer. Due to the nature of the work we do at the HelpCenter, we&#8217;re looking for someone with a broad range of PHP, XHTML and CSS experience and in particular someone with outstanding communication skills.</p>
<p>This will be a full time position with benefits, and we are open to remote candidates. See the <a href="http://wphelpcenter.com/jobs/">job posting</a> on the HelpCenter web site for more details and to apply.</p>
<img src="http://alexking.org/wp/?ak_action=api_record_view&id=3690&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://alexking.org/blog/2009/10/14/wordpress-helpcenter-is-hiring/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
