WordPress 2.8 is slated to be released late this month. Unfortunately, I’ve heard a lot of talk that 2.8 isn’t anything to get excited about. People are saying that it doesn’t have a lot of new features. As a matter of fact, in the WordPress Weekly Podcast – Episode 49 Were You Fooled?, David Peralty even said that it only had “stuff that should have been in WordPress already”.
While I agree that 2.8 will have fewer noticeable new features than 2.7 did, it definitely has plenty packed into it. First, more than 270 tickets have been closed for 2.8, over 240 of those were set to “fixed”. Many of the changes in WordPress 2.8 are cleaning up what was added in 2.7, as well as strengthening the foundations of the core code.
The widgets code has been completely reworked and all the core widgets have been updated to use the new WP_Widget class. Personally, I think it’s pretty exciting! Previously, writing widgets that followed the multi-widget pattern (the ones that can be used more than once, like the text widget) was a real pain. Using the old widgets methodology, the text widget was 104 lines of code, and rather confusing. The new WP_Widget class has reduced that to 39 lines of considerably simpler code. I’m looking forward to updating my WordPress Twitter Widget, Gallery Widget Pro, and Get Free Web Designs Widget. I also plan to release a few new widgets using the new framework.
Another new feature in 2.8 that I find important, is support in the Admin UI for taxonomy descriptions. Currently in the WordPress admin interface, you can add descriptions to categories, but not for tags or any custom taxonomy. Since categories, tags, and other terms are all the same now, there’s really no reason you shouldn’t be able to control the description of all of them. The patch that was committed (which I submitted), adds a description box to the tag/taxonomy forms in the admin section, adds a description column to the tag and custom taxonomy tables in the admin, and adds two new helper functions for use in your theme called tag_description and term_description.
Here are some other things I find interesting that are new in 2.8:
- comments_popup_link() now works on pages and single posts – This is something that I ran into six months ago on a project I was working on. I found the ticket already submitted by JeremyVisser and submitted a patch.
- I’m a huge proponent of the fairly new WordPress Shortcodes. A couple advancements have been made there. Shortcode Escaping – If order to actually show a [shortcode] in your post you had to use [ to encode the [. Now you can use [[shortcode]] to do the same thing. Also, the caption shortcode can now have shortcodes inside it.
- Support arbitrary tag taxonomies with edit-tags.php – Basically, the tag interface in the admin section now works with custom taxonomies. This is huge for people setting up large complex sites. Recently I had to re-create a lot of this to set up a stock tickers taxonomy. This will make future development much simpler.
- Autosave post/page when pressing Control/Command+S in TinyMCE – this is really nice for those that are not experienced at blogging (or web-based computing in general). Almost everyone knows what Ctrl+S does, so implementing that simple functionality into WordPress is extremely handy.
In the end, the changes may not be as flashy as they were in 2.5 or 2.7, but 2.8 is a solid step forward for WordPress.