TimNash.co.uk

Dev/Sec/Ops with a splattering of humour

Lets say bye bye to default themes

I’m going to preface this with I actually tend to like the Twenty XX themes that come bundled by default with WordPress.

Takashi Irie both folks I admire. I have no doubt it will be a fantastic usable and accessible theme.

However I don’t think it should be in core, I don’t think we should have Kubrick in core, or any of the Twenty XX series. Instead I want a single, functional barely styled skeleton theme a default theme that no one will ever use.

Think I’m mad well that’s ok but here is my logic

Decisions not choices except when we give choices

The mantra behind WordPress is decisions not choices, however when it comes to themes its that one time where everyone is going to want a choice. For many folk 20xx is not the themes for them, instead they choose from one of the 10s of thousands of themes in WordPress.org theme repository or the wide range of themes available on the net both free and paid for.

So for a lot of people, each iteration of the “new default” theme is clogging up WordPress, simply something to delete after an update. That must be a pretty gutting feeling for designers of the Twenty series.

Each default theme, needs to be maintained for ever while in core, thats resources that could be used elsewhere. No other themes have to reach such a taxing standard. Especially as they need to be maintain as is, so are sort of in a time capsule, constantly being maintained but not being updated to make use of newer WordPress features.

WordPress doesn’t have a default theme, as someone who spends time in the WordPress.org support forum, this is actually a rather frustrating problem. Issue X occurs, have you tried switching to one of the default themes? One of the defaults Oh the issue doesn’t occur in 2012 but does in 2015. Right so what we heave learnt is actually the issue may or may not be an issue with your theme, depending if there is also an issue with one of the default themes. Right that helped so much:(

I want you to imagine a different world…

One where we actually do have a totally minimal theme, a basic default skeleton with virtually no styling and nothing to go wrong. It’s not pretty but it’s always there.

You could argue this should perhaps be a starter theme, or a theme that all themes become child of both could be interesting approaches. The important thing is it’s lightweight and really only there as the fallback.

We then let users make a choice on the theme they want as part of the “onboarding” or install process.

So during our Famous 5 minute install we simply prompt for them to select a theme, from a very short list. All the 20xx are there plus maybe 1 or 2 others. Once they select the theme it downloads and installs from WordPress.org.

This has several very important advantages:

  • We are not including unneeded themes
  • We are testing the sites ability to update theme/plugins and the core auto-update feature
  • we are immediately giving users ownership of their site and how it looks

WordPress is about decisions not choices, but there are exceptions and this one critical choice will help people quickly feel they have control of their site. It will also mean a greater number of sites will be set ready to auto update.

By having a single default theme that can be relied upon to be there, debugging becomes easier and we can truly have a default theme.

The on-boarding/Install process will need to be adaptable to allow, developers who use automated processes or who don’t allow access to w.org to setup themes as they see fit. But this is something that can easily be built into the process.

It means default themes no longer tied to WordPress core can be set free, to have their own life cycles, to be given new features as they become available and to have the right to die if that is the way they go. Let’s allow the default themes to become first class themes for as long as they are around and be true examples of continual development.

I’m not suggesting we don’t have a Twenty Seventeen theme, indeed I want to see it, a truly innovative REST API based theme which really pushes the boundaries. I want to see it being demoed as part of Matts State of Word at WordCamp US as a centre piece.

Separating themes away from core doesn’t make them less important, if anything it means we can better highlight them.

So there you have it, Twenty Sixteen is going to be a great theme but I hope it’s the last one we see in Core and by WordPress 4.5 we don’t have anything but a single core theme.

What do you think, should we just have one default theme?