When WordPress 2.3 was released into the wild, one of the new features was an update notification which told you when there was a new version of WordPress or a plugin available for download. This was possible thanks to the API service called api.wordpress.org. Earlier this year, I had the privilege of attending WordCamp Dallas where WordPress 2.5 was unveiled to the world. I’ll personally never forget that day, but when Matt showcased the automatic plugin upgrader, it confirmed my suspicions back when 2.3 was released as to where at least some aspects of WordPress were headed.

During some downtime at the event, I pulled Matt aside and asked if him if the team was going to end up heavily using the API to not only upgrade plugins, but upgrade the core and also install themes. I don’t remember exactly what he said, but never the less, that is indeed where WordPress is heading. Thanks to this API, the future of WordPress from an end users point of view looks great.

WordPress 2.5 introduced automatic plugin upgrades. A time saving feature that the masses have loved. WordPress 2.7 is poised to really take advantage of the plugin API that the WordPress team has built thus far, allowing for the browsing and installation of plugins right from your administration panel. Another feature which may or may not be finalized in time for 2.7 is the core upgrade functionality. Again, thanks to the API for WordPress.org, upgrading WordPress could be as simple as a click of a button. The next item to incorporate into WordPress is the theme repository.

Although no definitive proof showcases the theme repository being integrated into the WordPress back end, I feel that it is only natural to incorporate it much like the plugin repository. What I say here is speculative, but based on the discussions that I have read, the plan is to allow users to browse around the theme repository and if they come across a theme they like, you’ll be able to click an install button which will unpack the theme automatically leaving only the step of activating the theme. I’ve mentioned this idea to others and they bring up the subject of theme upgrades. Because themes can be edited with the addition or subtraction of functions, I don’t believe upgrading themes will be as user friendly as upgrading plugins. However, unless a theme author completely revamps a theme, I don’t see the need to have an upgrade theme feature added to WordPress. Instead, the theme author should update the theme, change the version number and then, the theme repository API should notify the end user within the WordPress administration panel that a new version of their theme is available. A link within the message would direct the user to that themes entry within the repository from which they could read the change log. It would then be up to the end user on whether they want to apply the updates or not.

Based on my experience in dealing with WordPress end users, the three most difficult tasks when operating a WordPress powered site is upgrading WordPress, browsing and then installing themes, and last but not least, installing or upgrading plugins. Thanks to the hard work of the WordPress developers and associated volunteers, the API has provided us with the opportunity to use a piece of software where the three most difficult tasks to perform when using WordPress are practically automated. At the click of a button, you’ll be able to install a plugin, upgrade a plugin, upgrade to a new version of WordPress or install a theme. I may be wrong, but WordPress may be the first publishing system to provide this type of functionality to its user base.

I’ve had this feeling for quite a long time that WordPress was eventually going to provide these features as a means of making it as easy as possible to keep everything up to date. I suppose I may have a WordPress instinct built into me? At any rate, this is the road that the development team has decided to travel and I am happy to be part of the ride.

Are you looking forward to these three mundane tasks (possibly) being turned into simple mouse clicks?