WordPress 2.6 is around the corner (sometime next week, it looks like), and as usual, there’s a bunch of changes, improvements, enhancements that have went into this version. In my opinion, this is an odd major release. While there are certainly major new changes that warrant a new major release, much of the release consists of various improvements generally saved for “dot releases”. Security and enhancement type stuff. The thinking is that WP 2.6 can be released so a WordPress 2.7 can come in the early fall timeframe and integrate new features developed in conjunction with the Google Summer of Code project.
Still though, there is a significant amount of new functionality that I find quite nice.
Google Gears Support
Gears is the Google technology that allows for Firefox (apparently IE 6 too, but I can’t confirm) to “pre-cache” pages and speed up access. Gears has been integrated with WordPress 2.6 on the admin side and speeds things up tremendously. This is particularly important where broadband access is limited or inaccessible (third world, for instance). To enable Gears in your new WordPress 2.6 installation, click on the Turbo link in the upper right corner of your WordPress admin.
XML-RPC Editor Functionality
Quietly, a new bit of functionality snuck into WordPress trunk that threw a number of developers and kicked off an interesting discussion. In the development cycle, XML-RPC and Atom Pub API for remote editing was turned off by default as a “security precaution” since many recent WordPress security issues seem to stem from the XML-RPC protocol.
Daniel took the issue up on his blog in a bit of a vicious manner because he has a vested interest in desktop client support for blogs. He is the developer behind the very nice MarsEdit client for Mac which, incidentally, I’m using to write this post. He took his battle up, a bit more congenially among WordPress developers, and the result was a compromise. New WordPress 2.6 installs would be given the option at install to enable XML-RPC editing and upgraded blogs (pre-existing) ware grandfathered in to an “enabled” paradigm.
This is an important shift in the way bloggers think about writing. Most of us simply want to write. We don’t want to worry about the technical aspects of maintaining a blog. This is the philosophy that drove the b5media team, whom I worked for from very early days, to develop a network of bloggers that were able to simply write without worrying about the logistics of maintenance, upgrades, monetization, etc. Unfortunately, while most bloggers are not technical, malicious parties ‘out there’ are technical and look for any opportunity to attack blogs and other websites. XML-RPC and APP provide a vector which, though pretty secure, has seen its share of exploits in the past. Disabling functionality that is not explicitly used by every user makes sense for security reasons.
Bloggers can enable or disable the functionality via the Settings > Writing page in WordPress admin and most desktop editors still only support the XML-RPC protocol so unless you’re explicitly using the Atom Publishing Protocol, you’re probably safe to leave only XML-RPC checked.
Post Versioning
Developers familiar with Subversion, or SVN, understand the concept of versioning and diffs. Compare one file, or revision, against another file, or revision, and see a breakdown of differences between the two. With the help of GUI tools, developers can see a color-coded red vs. green (removed vs. added) presentation.
This concept has now been applied to posts so you can view differences between posts as well as “revert” to an earlier version of a post. I absolutely love this feature and you can see an example of a “revision compare” built directly into WordPress.
SQL Security – $wpdb->prepare()
1 | prepare() |
first emerged, initially unused… but there. The method was very experimental at the time and was not ready for prime-time so, though it was included, it was not yet used. We started to see its emergence in WordPress 2.5 and in WordPress 2.6 it is being used just about everywhere.
The idea behind
1 | prepare() |
, if you’ll allow me to get geeky for a minute, is to sanitize SQL in such a way that SQL injection is prevented. So, plugin developers, in particular, should be happy with this method (part of the
1 | $wpdb |
class). Not only should they be happy, but from a best practice standpoint, you should be using it.
In my opinion, this should be a part of a “dot release” and not as a major feature of a major release.
Shift-Click Selection of Multiple Checkboxes in WP-Admin
As the backend of WordPress continues to evolve after the release of the drastically redesigned admin in WP 2.5, usability enhancements are also making their way in.
One of the better usability enhancements added in WordPress 2.6 is the ability to “shift click” to select multiple checkboxes at once. Say, for instance, you want to clean up an unwieldy category system (as I need to), Simply navigate to your category management page, click on the first category you want to delete, for instance (posts will go into the default category), and “Shift-click” on a checkbox farther down the list. Magically, all checkboxes in between will also be selected.
This, of course, works anywhere where checkboxes are employed in the WordPress admin.
More Avatar Options
With the Automattic acquisition of Gravatar last year, in-built support for Gravatars was introduced in WordPress 2.5. WordPress 2.6 gives the blogger more options by allowing for selection of the “default” avatar. Out of the box, the default Gravatar can be “Mystery Man”, a generic grey avatar with a white silhouette of someone. Default avatars can also be “blank” (self-explanatory), the Gravatar logo, Identicons, Wavatars or MonsterIDs. These have all been a part of WordPress.com for some time and now come to the rest of us. For more information, Matt wrote a post for the WP.com community that you should probably check out. The difference here being, of course, that WordPress.com offers “dashboard avatars” and WPFROU (WordPress for the Rest of Us) does not include this functionality.
Page Templates over XML-RPC
In addition to the XML-RPC/APP security measures listed above, a new key bit of functionality has now been exposed for API editors (and also, if you think about it, demonstrates the power behind XML-RPC and why you might want to turn it off if you don’t use it). The XML-RPC interface now allows for managing page templates from an API editor. To the best of my knowledge, no editor supports this yet and may not. However, increasingly there is the ability to remotely post content from places like YouTube, Utterz and others. None of these services would have any real use for this functionality either, however I want to point out that because they can post remotely anything that is exposed to the remote world can also be managed.
It’s also conceivable that an offline WordPress client could be built that replicates WordPress admin in a desktop client, and this is one more step in that direction.
Press This
Press this! is a new enhancement of a long-existing concept. Bookmarklets. In fact, WordPress used to have a bookmarklet included that would allow a user to quickly start a new post from the browser toolbar, but the functionality was limited.
The Press This! functionality rocks, actually, because it allows the user to be on any website, click the bookmarklet and get a miniaturized version of WordPress admin with options to snip text, photos from the page, quotes or video embeds.
Obviously, we can lead you to water but we can’t make you drink. BE VERY CAREFUL OF COPYRIGHT VIOLATIONS! Oh, and the Associated Press sponsored this. (kidding!)
Integrated Theme Preview
Theme previewing has been a bugaboo for many a theme designer. How do we check and develop without affecting the rest of the site. Some folks resorted to using Ryan’s venerable Theme Preview plugin. Others setup a beta version of a site that was sandboxed off from the rest of the world. Lots of different approaches, all of which remain valid.
However, for theme developers and bloggers looking to see how a theme will look on their site, with their content, there is now theme preview bling. When you are on your Design page, click on one of the theme screenshots and your site will be loaded in a lightbox-like overlay to allow you a live preview. Heavily inspired, I’d imagine, by the Mac OS X Leopard Quick Look functionality.
Remember when Technosailor looked like this?
Plugin Management Overhaul
Finally, the plugin management interface has received a face-lift and some added functionality. Active plugins and inactive plugins are segregated and with that new fangled Shift-click functionality I talked about before, plugin management just got really freaking simple. Note that Active plugins can be deactivated in bulk and Deactivated plugins can be activated or even deleted in bulk. Clean up that stale plugin list in a snap. But… there’s always a but… make a backup before you go nuts.