The biggest event in the WP universe last week was the release of version 3.4 of WP. While the event generated a fair amount of press, I honestly found the release very underwhelming. Broadly speaking, here are a few highlights of this release:
- New Theme Customizer
From your Appearance → Themes menu you will see an option to “Customize” themes or see a “Live Preview” of them, in addition to the already existing “Options” link. The key difference is that for the “Customize” or “Live Preview” feature to work, your theme doesn’t have to be active. You could try out basic customizations and then activate the theme. While this is a useful feature, from a developers’ point of view this is merely eye-candy with very little value addition. Themes that rely extensively on options will find it nearly impossible to embed all their options in the customizer, and I don’t believe the intent of the customizer was to have developers do this (Suffusion has more than 700 options – imagine all of them in the Customizer!!). The only benefit I can see is from a skinning perspective, if a developer offers previews of multiple skins via the customizer (which is something I have bundled with Suffusion)
- Header and Body Background Customization
Back in version 3.0 of WP, capabilities were introduced to natively support custom headers and backgrounds from WP itself. The functionality has been modified in version 3.4 and custom headers now support flexible widths. Apart from this, there is no impact to end-users.
- Better Theme Searching
The theme installer has been improved to have an “infinite scroll”. In other words, if you search for a theme from Appearance → Themes → Install Themes and there are several matches, WP displays a few, then loads the rest on the same page as you scroll down.
- Templates in Sub-Directories
One of the more painful aspects of developing a theme was in the way WP handled template files: all template files had to be in the theme’s root directory. In this release you can have template files in sub-directories. This is a feature I like, because it simplifies file organization significantly. For an end-user this has no impact.
What didn’t make it
There are several tickets that have been submitted with patches to the WP core, and they have been submitted several months back. Yet, release after release such tickets fail to get merged into the core, though the changes would be small to add and would provide immense benefit. Here is an example that I had submitted, which incidentally was a duplicate of an ages old ticket. This is an easy change to make and verify, and adding this ticket would let different plugins play nicely with each other while modifying the custom menu functionality. As things stand now, two different plugins cannot modify the menu items under Appearance → Menus.
This is one ticket I am aware of because I wrote a patch for it, and I am sure there are scores of others that got triaged in such a manner. Another that didn’t make the cut was the support for multiple screenshots in the theme back-end. Of course, the live preview functionality makes up for this somewhat.
In essence, the feeling I got from this release is that it was very light on good features. The developers might point to the Theme Customizer, but, the Live Preview feature apart, the only people who will benefit from it are those who have just a handful of options screens. Bear in mind that theme developers have been building options screens since a really long time, so a lot of users are used to seeing comprehensive options.
Having been in consulting for a while managing projects worth a few million on occasion, I do understand the process of triaging and prioritizing issues and fixes. It is perfectly normal for a few things to be prioritized over others, but maybe the good folks developing WP should stop once in a while and grab the low-hanging fruit. This is not meant as a criticism of this release of WP – I am sure what was done was done well enough. It is just that I was very happy when the last few releases came out: 3.0 had navigation menus, custom post types and native support for custom headers & backgrounds, 3.1 had custom post formats, 3.2 had TwentyEleven and had phased out PHP 4 support, and 3.3 had some neat APIs. But in 3.4 apart from the ability to define templates in sub-folders I didn’t find many appealing features.
Impact on Suffusion
In general I manage to stay on top of releases by silently yet actively tracking changing requirements and issues reported on other folks’ tickets. So most of the time users don’t have to wait for me to make Suffusion compatible with a new WP version.
However, this time I am compelled to make a change in theme behaviour. Recently there was a heated discussion on the Theme Reviewers’ mailing list about the way WP’s custom background works. The TL;DR version of the discussion was:
If a theme implements WP’s “custom background” feature, it should do it fully. In other words, if Appearance → Background doesn’t have an image, the site background mustn’t show an image.
So here is what I did for the next version of Suffusion:
- If Appearance → Background has a background image, that image will be shown as your site’s background (no change in this behaviour).
- If Appearance → Background has no background image, there will be no background image for your site. This is a big and disruptive change, because users might have set no image in this section. Sorry, but if I had my way, I wouldn’t have forced this on you.
- If Appearance → Background has the default background image, only then will the settings from Appearance → Suffusion Options → Skinning → Body Background take effect. If you have left this section to have “Theme Styles”, then everything will be as default.
So, if you upgrade to the next version of Suffusion (4.2.3) and your background suddenly goes AWOL, please don’t be alarmed. You can go into Appearance → Background and simply restore the defaults there.
This is something that bears repeating, so I am going to post the instructions again when the new version is released.