If you follow the theme review you know what I’m talking about. If you don’t let me give you brief glimpse of what I am going to talk about.
For as long as I can remember being in the review team, there has been an issue of themes not being allowed to do certain things. One of which is “creating content.”
If you know how WordPress themes work, that’s awesome! If you don’t let me try to explain a little bit with a simile. A WordPress site is very much like a car. It has an engine, a rear-view mirror, a body, some seats, and some wheels. Many of those can be replaced, switched, altered and tailored to suit your needs. If you wanted to go off-roading you get a different suspension, different tires maybe a radio just in case. Now, where do themes fit in this?
Themes can be like the paint or color. It makes it so you can stand out, be seen or blend in, depending on what you want. The paint doesn’t add an extra mirror, an extra wheel, or bells or whistles. It showcases your car. Simply that.
That’s the short story of it.
A look way back
In order to look forward we also have to look back. I’m talking way back to when the review team was first created. I wasn’t around the community but I am sure there are some that will remember this and smile:
The review process is intended to catch technical issues and ensure that new themes conform to modern web standards and WordPress standards. Theme reviewers may also provide some feedback on aesthetics, but users of the theme gallery will have an opportunity to provide feedback on the design after the theme is available in the gallery.
That is a quote from the Theme Review codex page from June 11, 2010. Yes, I did say way back. A few months pass and the page does start to get more and more informational to not only reviewers but authors as well. The process is outlined, the scope of the process, how to become a reviewer, and some general guidelines in theme development are beginning to take place. Awesome!
In August 2010, the Theme Unit Tests are added. This is a very pivotal and important part and I cannot emphasize this enough. There is a reason for this and I’ll talk about that a little later.
For now, let’s keep going down memory lane.
Let us jump to May 27, 2015. A post on the WP Tavern got quite a few comments about a guideline that had been set for several years but was now being “enforced.” The rule in question is:
Themes are required to define the presentation of user content, and must not be used to define the generation of user content, or to define Theme-independent site options or functionality.
This was added to the codex guidelines on March 8, 2012. So, for the last four years this rule had been in place and never really defined and rarely brought up by others in the review community. At least in translation. You see the review team is made up of people from all around the world. India, England, Chicago, Canada. A lot of it can be left up to interpretation as well and that’s when things can go wrong.
The current issue
Currently we are faced with a lot of themes that add extra things to a user’s site and that makes it hard to switch to a new theme – for some. This can be something so simple as a section that has an image and some additional text. What many reviewers like to call: pseudo-post types. Even the current requirements states:
The theme options should not be pseudo custom post types and save non-trivial user data. Non-design related functionality is not allowed
Very wordy and a little hard to follow for some, right? I consider myself fairly smart when it comes to certain things but I had to read that several times to fully understand it. It makes sense when you explain it but when you try to be concise with limited words, you do lose some of the meaning.
Think of it this way. What information can the theme get, or what data is available to show and actually show it. Very much like the car’s paint or style.
Let’s say you wanted to showcase the wheels. The theme won’t replace them, it merely coats the rims in a brighter color than the body to emphasize them. The paint is not creating an extra antenna, or an extra head light. It emphasizes what the car has. And that is what a theme should really do.
The biggest take-away from the first iteration is:
Themes are required to define the presentation of user content
The content issue
Okay, I did say I was going to mention the unit test. I left this for last because it ties together the car simile. It is the interior of the car.
When creating a theme, it is the user content that is displayed. Let me say that again.
When creating a theme, it is the user content that is displayed.
The theme unit test is useful for not only reviewing a theme but creating as well. Now, I know there may be a few people who say the current demo is stale, I agree, but if you want to change it act upon it. You can’t remove a thorn from your foot by simply dismissing it. You have to actually do something about it.
There is a meta ticket that has been around for nearly the same amount of time. It was created three years ago and still not resolved. If you want to change it, join in.
If you are a theme author, I implore and challenge you to download as many dummy content files as you can get your hands on. Use that as your starting point and find a way to display it all without resorting to adding an extra text input field.