Some Random Thoughts on Default Themes

Twenty Sixteen was officially announced. This has lead to some renewed discussion of default themes. Here are some of my random thoughts on default themes in general and Twenty Sixteen.

  • WordPress is going to ship with multiple themes, so it’s important for different themes to hit different notes.  If Twenty Sixteen sets out with the same goals (or achieves the same goals) as Twenty Fifteen, it is a failure.  Twenty Sixteen seems to be a great way to show off photos.
  • Default themes serve as an entry point to contributing to WordPress.  Whereas core can seem daunting (it isn’t), plenty of people have worked on themes so they feel like they can contribute to a default theme.  This is part of why doing a new one every year is important.
  • Default themes help educate theme developers. By having a well commented theme, developers can learn how they can build themes.  The inline comments act similarly should be a tutorial for how to build child themes (and how to build themes in general).
  • Default themes allow for experimentation that isn’t as easy to do in core. Once code is in core, it’s likely going to be maintained forever. It also needs to be flexible.  This means that a default theme can experiment with things like new widgets, new ways to display content, and new ways to write code.  While I don’t think SASS has much of a place in core, I would love to see a default theme written in SASS.  Even better, I would love to see one use postcss with some fun plugins.
  • Core learns from default themes.  Nacin once said “Twenty Ten enabled the core team to become theme developers once again”. This is needed.  Most people on the core team that build themes are building pretty advanced themes.  The needs of Conde Nast, The New York Times and most of the clients of 10up, XWP, Human Made, etc are not the same as the needs of people who install a theme from the WordPress repository.
  • I wish there was an open call for ideas and that Matt would comb through them (with help as he sees fits) to come up with Twenty Seventeen.
  • Accessibility needs to stay a top focus of the default themes.
  • I really want to see a default theme that demonstrates wp-api.  I hope when the code for Twenty Sixteen is released, it is react and wp-api powered.
  • Twenty Sixteen looks good right now, but I think it will look better with a bow tie on it.

12 replies on “Some Random Thoughts on Default Themes”

I’ll preface this by saying I like and use Sass. It’s not that I have a problem with Sass as a tool or a language, but it adds an unnecessary barrier to contributing. It requires that developers learn another language on top of CSS (since you still need to know CSS to develop Sass) and it requires a build step in order to be usable. Builds shouldn’t be needed to have a working version of WordPress to develop against since they too act as a barrier.

I also think that much of what WordPress uses Sass for can be accomplished using CSS, just not CSS that is implemented by many (or in one case any) browsers. CSS Variables and the CSS4 Color Module will make cores need for Sass completely go away.

I agree with all of your random thoughts. It would be cool to see default themes be more like experiments as you suggested. I’d also like to see what the community would come up with if giving the chance to create the next default theme. At the very least, some concept images.

While I would love to see a REST API-powered theme, I don’t think Twenty Sixteen can be that. Default themes need to depend on core and it’s not yet clear if the API will make it into 4.4. Perhaps next year?

The theme review theme has decided that themes on can bundle the API. Maybe Twenty Sixteen should also bundle the API? The big thing blocking the API from going into core is the lack of demonstrated uses. This could be an opportunity to do so.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.