A disclaimer
I would have posted this on WP’s official site if it allowed me to post, but since it doesn’t, I am publishing it on my own blog. This is meant as an appraisal of the new theme approval process on WordPress.

On 9th June 2010 WordPress made an announcement that it was expanding the theme review process. There was a call for volunteers to support theme reviews. This was indeed good news, particularly if you were a theme developer. For a long time Joseph Scott had been the sole approver of themes on WP, and though his work was impeccable and his reviews very good and accurate, if he was traveling or unwell or on holiday theme approvals tended to get delayed. This was by no means a deal-breaker, but having more people looking at themes definitely meant that things would get better.

Soon after the announcement a few things happened that were moves in the right direction:

  1. Quite a few folks signed up in response to Joseph’s post, so there are more volunteers now.
  2. A dedicated Trac project was setup for approvals.
  3. Every time a theme got submitted the corresponding Trac ticket got emailed to the theme author so that he/she could follow what was going on with his theme.
  4. There was much better focus on the quality of code in a theme. Actually the focus was more on writing code that didn’t generate “silent errors” or PHP NOTICE messages, but nonetheless adhering to this is something that keeps down the size of logs on your server.

But that is where the goodness stopped. One of the key things which I had hoped would be addressed, speed of approvals took a nosedive. To cite an example earlier when I submitted a theme version it would take around 1-3 days to get approved. It took 1 day if I submitted it on a weekday and typically 3 days if I submitted it on a Friday. In some cases if it was vacation time then the versions took about a week to 10 days to get approved, but this was more of an exception to the rule. Normally on a day you would see 2-3 versions of different themes getting approved, and on occasion the number of approvals even ran into double digits.

However, with the new experiment somewhere something went wrong. Now you have around 1 theme being approved in 2-3 days, which doesn’t seem right. To drive my point home, version 3.5.7 of Suffusion got approved on 10th July. Today is 28th July and only nine more versions of different themes have been approved (including a version of the WP default theme Twenty Ten). This is a far cry from how things happened earlier. I normally used to wait for about a week before pinging the folks to check the status of a version, so for 3.5.4 I sent out a message asking what was up, and this is what I received:

Thanks for the note.  Unfortunately there is currently a backlog of themes in the review queue.  We are working on it.  Themes are being reviewed in the order in which they were received.  Thank you for your continued patience.

I didn’t know at that time how much the backlog was or how much longer the next version of Suffusion would take for approval. I found out later how you can estimate the potential wait time. The backlog, as I know now, is well over 100 theme versions at present. So somehow adding more people slowed down the process.

The delay also brings in a bunch of associated problems. Currently if you have a theme version in the queue and you submit a new version, the older version gets deleted and the newer version goes to the back of the queue. So as a theme developer:

  1. If I have submitted a bug-fix for the theme 3 weeks back and that hasn’t been approved, how do I ensure that my users get the bug-fix? Distribute it from my site (unapproved)? Doesn’t sound safe.
  2. If I have submitted a version 3 weeks back with some bug-fixes, then I discover some more bugs in the submitted version what do I do with them? If I resubmit a new version I go to the bottom. So I add another month or so to something that has already been in for 3 weeks? Ouch. Incidentally I have had this happen to me quite often, most recently with version 3.5.8 and 3.5.9.
  3. If I choose not to submit the bug-fix for the older version but let the bugs be approved (these are niche bugs that cannot be caught in the approval process, mind you) and then I submit the new version, I am risking users staying with a buggy version for an indeterminate number of extra weeks.

So somehow this review process discourages active theme development, which I feel is counter-productive to the whole experiment.

How can the experiment be improved? I have a few suggestions:

  1. Improve targets. Set a target saying that each approver should aim to disposition a new theme for approval every weekday (or some such figure). If you have 10 approvers, this will take care of tackling 10 themes everyday and bring down the backlog much faster.
    I can almost hear people say, “What does he know?”, or “He is speaking like a consultant”, or “He is oversimplifying”. Well, I have been doing free support for Suffusion since late last September and that is how I keep my backlog down. Every morning I go through all outstanding support requests, take a crack at answering them if they haven’t been answered by someone else, then carry on with my regular job for the rest of the day. If a request comes in during the day, if I am not doing much then I respond to it (or if I think others can respond, I skip it). This has been a largely successful way of staying on top of things. I have responded to more than 3000 posts on my support forum at around 10 posts per day.
  2. Don’t de-prioritize existing themes in the queue upon newer submissions. I love putting out new functionality in the theme, and anyone with any experience whatsoever with Suffusion will agree with me in the fact what I provide is not just cosmetic, but hard features. Sometimes a new version is required to patch a bug. Getting pushed to the back of the queue is very off-putting, because it simply adds so much more in terms of wait time for approvals.
    This simply encourages parallel avenues of theme distribution because developers know that their work will not be approved soon on WP’s official site, so they distribute it from their site. And that is where they can start putting in stuff like tracking code etc into a theme. Mind you, quicker approvals will make this a non-issue, but the current wait of a few weeks is a bit too much.

As a concluding remark, the topic of this post and the issues in the post are not mission-critical and I am sure people have more interesting things to do. However I am sure that the free theme developers would be quite happy with these modifications, particularly since some of them invest a lot of energy in building their themes.

Earlier today Suffusion obtained its 100th rating on WordPress.org. This puts it it rather exclusive company – it is now the 5th theme to obtain this distinction. The four others to have reached this landmark before me are:

  1. Atahualpa – Really the inspiration behind Suffusion and in my opinion the gold-standard of theme customization, Atahualpa is way ahead on all statistical measures on WordPress: most downloads and most ratings. At the time of writing it has been rated a whopping 418 times on WordPress!!
  2. iNove – Another theme that has been around for quite a long time, iNove has been rated 193 times at the time of writing.
  3. Mystique – This is a really popular theme with WP users because of its catchy design. The only theme younger than Suffusion to have been rated more times than it, Mystique has 140 ratings at this point. Its current popularity will probably ensure that it will go over iNove in the near future.
  4. Thematic – It is no surprise that Thematic is the only free theme that has been in the top 15 popular themes since as long as I can remember, and that is very long! No other theme – Atahualpa, Mystique and iNove included has managed this distinction. Thematic is a very clean and well documented theme framework that most people swear by. If you are a theme developer, look at Thematic (and Hybrid) to see how to do it right. At present Thematic has been rated 111 times.

Though unlikely it is possible that I have missed a few here. So if you are aware of any other themes that should be here by all means let me know.

Thank you users, for using Suffusion and voting for it to let people know that you have liked it!

After months of waiting and after a series of Beta versions and Release Candidates WP 3.0 finally came out today. I encourage all of you to upgrade your installations.

Why Should You Upgrade?

Version 3.0 is a significant release that has a lot of terrific features. Here are some:

  1. Menus
    This is arguably the most awaited feature of WordPress. This is  a huge relief for developers more than users as we don’t have to code our themes to provide you with a mechanism to select pages / categories / links to build the menu. As long as the themes offer basic WP 3.0 menu support you are good to go. You can build and structure your menus as and how you want with very little restrictions.
    Suffusion has supported native menus from version 3.5.0.

    It has been brought to my notice that WP pulled a little trick here. In the release version they changed a call ever so slightly, thereby making it seem like menus don’t work in Suffusion 3.5.3 (and a bunch of other themes that claim to support menus). To fix this:

    1. Open functions.php in your theme editor
    2. Search for the line that says add_theme_support(‘nav-menus’);
    3. Change that to say add_theme_support(‘menus’);

    That’s all.

  2. Integrated Multi-User Code
    With WP 3.0 the two branches of code, WP-MU (multi-user) and WP have been merged. You need to tweak a few settings to convert your site from a regular WP site to a WP-MS (multi-site) installation. You can start by creating a network.
    Suffusion can be used for WP-MS and can be made to work with BuddyPress too for a better experience.
  3. Custom Post Types and Custom Taxonomies
    The next big feature for folks wishing to use WordPress as a full-blown CMS is the concept of Custom Post Types and Custom Taxonomies. This offers limitless possibilities. If you have a site where you do reviews of books, movies and music, you can create custom post types for each of those, then associate custom taxonomies to them, like authors for books, actors and directors for movies and artists for music albums. In a theme that supports child themes you can suitably create your own templates for each of these post types and make them appear very different from the regular “blog” look.
    Suffusion added a plugin-like feature to let you define custom post types and taxonomies in version 3.5.3. This functionality will be enhanced in the next few releases.
  4. Native Support for Custom Header and Custom Background Images
    Now theme developers don’t have to code up a bunch of stuff to handle custom header images and background images. Of course, if you are like me you might still want to code up things – coding definitely gives you a lot of flexibility.
    Suffusion doesn’t support this feature at present, but it will, very soon. I couldn’t beat the WP 3.0 deadline, to be honest :-)

Why Shouldn’t You Upgrade?

Simple answer – themes and plugins. Before you upgrade make sure that your theme is tested to work for the theme you are using. I am assuming that you are not necessarily a Suffusion user, so if you are using a theme that is not compatible and you upgrade, you will find yourself on a sticky wicket.

Another reason why you shouldn’t upgrade is if you have some indispensible plugin that is not tested on WP 3.0.

How Should You Upgrade?

If you don’t see an option on your admin Dashboard to upgrade, head over to Tools → Upgrade and then do the upgrade.

There is always the manual upgrade option, where you can download the zip file from WordPress, unzip it and overwrite everything apart from the wp-content folder.

What? No Suffusion News?

Come on! You cannot expect me to sign off without talking about the progress on Suffusion!

I have been busy the last week adding some optimization-specific stuff to Suffusion, like an ability to use GZip compression and minification on CSS and JavaScript. I have been largely successful in improving a lot of things, significantly bumping up the scores on Google Page Speed and Yahoo YSlow. Mind you, YSlow is quite hard to please – Yahoo’s own site scores a “B” grade on its performance test.

I have also been working on a ton of other stuff, small and big. Stay tuned – a new version will be submitted soon.

Today Suffusion crossed a very significant milestone – 100,000 lifetime downloads! Frankly when I had started out I had no clue that I would reach six figures. I have all my users to thank for this.

As is customary I drop in a line every now and then saying what I plan to do for the next few weeks. I will use this opportunity to do the same:

  1. A few more widgets and widget areas. This was something I promised a few weeks back. Broadly speaking, there are a few prime areas where I could let users put in widgets.
  2. Full BuddyPress support. This is something I will actively tackle once WP 3.0 is out.
  3. Full WPML integration. The major aspects of WPML work with the theme, but some aspects are missing, like integration with featured content etc. I will get these ironed out.
  4. Full theme skinning. I recently put in some options to take the sting out of configuring certain aspects of look-and-feel. I will be providing a few more that will help users pick their own images for everything, like widget headers, navigation bars etc.
  5. Typography support for custom fonts. This will help move away from boring “browser-safe” fonts and you will be able to use a wider array of pretty fonts.
  6. Code housekeeping. I read some posts on the web commenting on the general clutter of code in the theme. While I don’t agree with most aspects of the assessments, I will look at cutting out any cruft that I can see. In addition I am going to change the options framework to use WP’s Settings API, moving away from my homegrown approach.

That’s it for now! Thanks to all of you!

One thought I have been wrestling with since the past few weeks is a redesign of the options menu in Suffusion. While the options page is ultra-powerful in terms of what it can do, it looks rather overwhelming. I am not a big fan of the long list of options that shows up when I click on a tab in the menu and I would dearly love to make it cleaner. If only I could come up with a better solution!

When the options in Suffusion were a lot fewer (think release 2.0.x) the interface was perfect. But as the power of the theme grew, so did the list of options. And it becomes particularly taxing on the eyes of the administrators who have to change the options. There is something that is stopping me from changing the structure of the options page and that is the fact that it is incredibly easy to code it up the way I have it. I started a handful of tutorials on how to write a theme options page a few months back. In that you can see how absolutely easy it is for me to add new options, given the modular structure of my code. I simply need to figure out the option type, provide some option values for it and bingo! The processing code is very straightforward and it automatically picks the options and formats them as appropriate.

But as is the case very often, what is easy to code is not necessarily easy to look at. I did a good bit of redesigning during Christmas last year and came up with two sets of tabs, a horizontal set of tabs for high-level grouping and a vertical set of tabs within each horizontal tab. This at least made the vertical list look a lot smaller. But as I continue to add options, that page is again threatening to look daunting. So what do I do now?

I looked around to see how some other themes do this and here is what I saw in two really good themes:

Atahualpa WordPress Theme

The Options Page of Atahualpa

Constructor WordPress Theme

The Options Page of Constructor

Suffusion’s options look to a large extent like Atahualpa’s. However, given Atahualpa’s incredible number of options it too probably faces the same fate as Suffusion to a degree. Where it does gain an edge is in the fact that it uses pictures to illustrate what it is talking about and doesn’t rely on text like Suffusion does. I will be the first to admit that Suffusion’s options are verbose.

The other theme presented here is Constructor. If I were to use one word for the options page for Constructor, that word would be lovely. Its options are much fewer in number than Atahualpa’s or Suffusion’s, but the page is truly nice looking. It makes liberal use of JQuery, and is the perfect advertisement for the adage, “A picture is worth a thousand words”. But here is a catch – every option has been manually coded. This is fine with a small set of options, but it will require an effort of Herculean proportions if I were to adopt that approach for Suffusion.

My feeling is that the options page should be something in between the two styles. If I could figure out a way to automate the generation of pages like Constructor’s, that would be perfect. What do you think? How do you feel I can move to a structure more like Constructor’s?

As the adage goes, “A bad workman blames his tools”. So let me start off by saying that my IDE went aggressive and did something I didn’t mean for it to do. In my zeal for being semantically correct I renamed a file called sidebars.php to widget-areas.php and inadvertently changed all strings of code referencing “sidebars” to “widget-areas”. As a fallout, the string “no-sidebars.php” became “no-widget-areas.php", but the file name remained no-sidebars.php. Ditto for other templates. The result is that people using specific column templates to this date suddenly have had their column templates break.

I fixed this problem and submitted the correction in 3.3.3 a few minutes back to WordPress, but in the meanwhile if you are using a specific column template, please move down to a lower version, like 3.3.0. You can download it here.

As a person who spends a good deal of time coding this, I fully sympathize with the time and effort this might have cost you. Terribly sorry for the same.

In the early hours of 26th January 2010, the 50,000th download of Suffusion occurred. This, obviously is great news for me, particularly since I hadn’t envisioned it getting so popular. A BIG THANK YOU to all my users for helping me see the theme grow!

Dear Users of Suffusion,

I have a sincere request for you. As you are aware, I tackle the support for the theme at the forum. Of late I have noticed an incredible number of queries on the forum asking for assistance regarding various aspects of the theme. To provide you some statistics, I opened up the forum in October for public use and the first support request came in on 21st October. Up until this point I have written 758 responses to different queries. Simple arithmetic would indicate that I have posted no less than 11 responses on an average each day (more than 15 each working day). While this is high, intermittently the numbers have been astronomical, with me requiring to respond at least 20 times each day.

To cut a long story short, I would like to request you to note the following before you post:

  1. Please search the forums thoroughly. Trust me when I tell you that more than 80% of questions are reposts of issues that other people have had. E.g. if your featured posts are not working, there is a chance that you have defined only one post as featured. If your magazine template is not working, it is probably because you haven’t assigned a post to this template. Questions regarding how to change the font colors etc have been answered not less than 10 times.
  2. Please do some due diligence at your end and be as informative as you can. E.g. a question asking “Can you tell me what is wrong?” should be accompanied at least by your blog’s URL. Also, if you have changed the PHP files at your end, that is akin to voiding the warranty of the theme. If something breaks after you have edited the PHP, I would first suggest replacing your changes with a backup. If you don’t have a backup, there is always the official theme release page for download.
  3. This is a site for a theme and the forum is for the theme, too. I understand that the theme is lacking good documentation and I will strive towards making it better. However, posting general WordPress questions and CSS questions that have nothing to do with the theme are very distracting. Some of the questions are alright, but make sure that you have searched the WordPress plugins repository for non-standard functionality. Some of the plugins you might find useful are Widget Logic for controlling which widget appears on which page, My Category Order to change the order in which categories are displayed, My Link Order to change the order in which links are displayed, Sociable for inserting social bookmarks in posts etc. I keep adding functionality to the theme all the time, but in the meanwhile, please use the plugins available from WordPress to substitute the functionality.

Please note that I am supporting the theme free of cost. Completely. I seriously doubt there is another free theme with free support that tackles this kind of query volume. Any support query that I have to answer takes time away from development. So please be considerate when you post your support queries.

Cheers,
Sayontan
(Furiously working away on release 3.1.5, while 3.1.0 is still pending approval at WordPress!)

PS: I hope I haven’t alienated any users, but please try to see this from my point of view.

Apologies for this, but a bug crept past my notice in version 3.0.2. While fixing a bigger bug about breaking layouts, I inadvertently introduced a smaller one.

If you have upgraded to the new version you will see that the widget headings on the sidebars show up with some padding – white space or black space depending on which skin you are using. To temporarily remedy this, please go to Suffusion Theme Options -> Sidebars and Widget Areas -> Use JQuery to fix widget layout issues? Set this to use JQuery. This will fix the problem. I have already patched this. I will make a release soon, after which you can download the new version and roll back this option.

Apologies for the trouble.

For once this is not a post about a theme release. I wanted to thank all of you who made contributions towards my coffee. Turns out that I can now get an iPod touch, and that too, before Thanksgiving!! I can hear some of you snickering, “Well, you can now test out the theme on iPhone / iPod Safari!”

I have been doing bug-fix releases the past week. I have also added some minor functionality, but nothing big. The reason is that I have been working towards releasing a magazine-styled layout. The basics are taking time to put in. I will start with one magazine-styled layout and then add a few more. Photo-blogging will follow. Expect the first magazine-styled layout later this week. The new versions will start from 3.0.0 onwards, because, frankly, the theme in its current state looks nothing like release 2.0.0 and the magazine-styled layout seems like a good point to jump release versions and indicate the revolutionary nature of some of the last few releases as opposed to the evolutionary (featured posts, tabbed sidebars, multiple types of drop-downs in the menu, RTL language support etc).

© 2010 Aquoid Suffusion WordPress theme by Sayontan Sinha