WordPress 2.3 Review

Wordpress LogoOver the past few days I’ve upgraded a number of my blogs to WordPress 2.3.  As this represents the first release in the 2.3 series, there are significant changes to the functionality.  For those of you not familiar with Software versioning, going from 2.2.x to 2.3.x means that significant features enhancements have taken place.  The move from 2.3.0 to 2.3.1 will likely represent security and bug fixes only.  Going from 2.x to 3.x represents and even more significant change, usually involving significant rework of existing functionality.

So with that understanding, you may be apprehensive about upgrading to this new version of WordPress.  In fact, many people familiar with software development will steer away from .0 releases of software they rely on.  This is down to the a history of problems with early versions of software and, more relevant in this case, initial implementations of new functionality.

So what are the risks of upgrading?  Well apart from the obvious, the blog failing, losing your data, WordPress brings with it new challenges.  namely themes and plugins.  To reduce the risk of anything going wrong you can install and run a plugin called Upgrade Pre Flight Check.  This will check your plugins and templates and alert you of any potential problems.  It identified a number of plugins that may cause issues, my theme was fine.

A plugin notification in WordPress 2.3Speaking of plugins, one of my favourite features of WordPress 2.3 is the way it now automatically checks your installed plugins to ensure they are the latest version.  This is made possible through the tight integration with the www.wordpress.org site.  If you are not running the latest version, it alerts you and provides a download link.  I’ve previously used a plugin to do the same thing, but the native WordPress solution is far more reliable and elegant.  I did find a number of plugins I had installed stopped working on WordPress 2.3.  Namely Add Meta Tags and Categories Autolink.  I hope these two excellent plugins are upgraded soon to work with 2.3.  The preflight check plugin had alerted me to potential problems, so there was no great surprise.  Something that would make this feature even better would be to provide the option to automatically upgrade the pluging, without having to download the plugin and then upload it to the server.  There are other web based software products that do live upgrading, so why not WordPress?  Similarly the version of the core WordPress software is now checked to ensure you are running the latest version.

Adding Tags in WordPressThe plugin enhancement pales in comparison with the other big change in 2.3, the introduction of the long awaited tags.  Tags are used throughout the internet these days, so I shan’t explain them here (you can find a definition of tags here).  The net result to the end user is an additional way of classifying posts.  Tagging has been a much requested feature and is implemented fairly well.  When writing a post there is an additional field below the main editing field where comma separated tags can be entered.  Personally, I’d like to see WordPress remember what tags you’ve previously used,  For example, if I’d previously tagged a post as “blog” I may end up tagging a later post “blogs” simply because I can’t remember the exact terminology I’ve previously used.  A del.icio.us style approach would be better in my mind.

These changes may seem fairly minor to the end user, and some would even question whether it constitutes a jump to 2.3.x, but that is greately underestimating the amount of effort required to implement tagging.  The two plugins that I mentioned stopped working are down to this change.  As I understand it, they have stopped working because the old categories logically don’t exist anymore.  This is much like changing the foundations of a house.  While the rooms may look the same, a MAJOR change has taken place behind the scenes.

One thing I would say about the tagging functionality is that it may cause problems for people who have been running WordPress for an extended period of time.  This is two fold.  Firstly, unless the theme they are using is widget friendly, there’s no way of displaying these tags without a template change.  Not a huge deal but, for the immediate future at least publishers and theme designers are going to have to find a way to support templates and tags.  The reason is simple, none of the existing posts in the blog are going to have tags associated with them.  So categories are here to stay for the time being at least.  There is a category to tag converted but I’m too scared to use it and I can’t find sufficient documentation for it on wordpress.org (not something you can usually accuse wordpress of).  Something that I can see many bloggers struggling with are the structural differences between categories and tags.  In 2.2 you can assign a post to more than one category, and this means it appears on both category pages.  Compare this to tags, where you can string together multiple tags in a query to refine matches.  Bloggers are going to have to reassess their use of categories, and decide whether to carry on as is, or whether to embrace tagging.

Most of the other changes fall into the category of maintenance.  There’s a new status for posts, Pending Review, and many of the generic libraries used to provide things like the Rich Editor (TineMCE) and AJAX (Scriptaculous) have been updated, bringing with them some improvements in performance and functionality (there are some new options available in the rich editor).  You can now also search through posts and filter them in the admin interface, which is a very welcome feature.

So, in summary I think upgrading to 2.3 is worth the effort.  It doesn’t add spectacular new features but very much feels like it’s putting the foundations in place for the rooms to be rearranged at a later date.  In case you’re not overly familiar with the WordPress upgrade procedure, I’d recommend trying out the Automatic Upgrade, a plugin which does all the hard work for you.  I’ve used it twice now and it worked flawlessly in both cases.

A list of changes made in 2.3 can be found here.