WP Perspectives Issue 8: The Future of WordPress Themes
In this issue: We look at the future of WordPress themes and some fuzzy thinking about Gutenberg. Also, the latest posts on WebTNG, and some useful links from around the web.
Marketing is a contest for people’s attention.
Dynamic WordPress – The Future of WordPress Themes
There are three types of theme. WordPress theming is turning a corner and I imagine that the themes of today will be called “classic themes.” The most popular classic themes are general purpose themes that are page builder friendly, have more than a modest number of Customizer options, advanced features like hook locations, and have good support for Gutenberg. Most of them also seem to work well with WooCommerce. Classic themes will not disappear any time soon. After all, creating theme templates with Gutenberg, also known as Full Site Editing, is optional.
Block Based Themes
Next there are block based themes. These are the new themes that are being developed in support of Full Site Editing. Block based themes are currently very basic and don’t have many options. For example, the ones I’ve seen don’t have sidebars and only have a few Customizer settings. They currently are only good for simple uses like blogging. These themes rely on the Gutenberg editor and features such as block patterns and Full Site Editing templates. Gutenberg developers have started to work on global styling and have introduced a new mechanism, the presence of a “theme.json” file in the theme’s root directory that has CSS settings for overriding Gutenberg’s default styles. Block based themes will expand and mature just as Gutenberg “beyond just content” does. Further, I expect to see third party theme authors adding features to their block based themes to fill in the gaps that Gutenberg leaves, but also adding features that make their themes more powerful and flexible. Lets call these themes “full featured block based themes.” These are the themes of the future.
Finally there are hybrid themes. These are classic themes that support Full Site Editing and the other “beyond content” Gutenberg features. Well, there may not actually be any hybrid themes yet, but a number of authors of popular classic themes have promised to support Full Site Editing. It seems clear from the current direction of Gutenberg that features such as block patterns, global styling, and Full Site Editing templates are not incompatible with classic themes. For the most part the features of both can coexist. Adding support for “beyond content” Gutenberg will be yet another level of complexity on top of the myriad number of features that classic themes already offer. Creating them will be more work for theme authors, but they appear to be what users want. For the next few years, at least, I expect freelancers and agencies will tend to use hybrid themes.
Dispelling Some Fuzzy Thinking Related to Gutenberg
I’ve noticed some odd thinking that doesn’t make sense to me. These things are new, so maybe I don’t understand completely. If so, please comment and put me on the right track.
Block patterns are great. They are a block group with predefined layout and styles applied. You could create them yourself, but they are a real time saver and presumably are created by people with design skills. Block patterns will also play a big role when designing Full Site Editing templates in Gutenberg, because you can drop in the block based header pattern of choice, for instance. What is remarkable about block patterns is that they are in WordPress core, but as far as I can tell, these are the same type of thing as page builder templates, right? They have been around for years. I keep questioning my understanding of the feature because as far as I can tell, the headline should be “Gutenberg gets a page builder feature,” but I don’t see it mentioned like that.
Block Based Themes and Full Site Editing
Tammie Lister is a talented theme developer, core contributor, and has been very active as a member of the Gutenberg team. She posted the article Theme creation is now easier in which she says that WordPress themes have evolved to the point that now creating them is easier. To summarize her article, for a long time the “WordPress way” of building themes involved workarounds. Over time the complexity increased as adding new features and streamlining theme creation via frameworks involved adding more workarounds. Something had to change and change did come with the Gutenberg editor. There are now new levels of creation open:
- Create using patterns and design tools.
- Create using patterns and global styling.
- Create using patterns, templates and global styling.
- Create using a theme you create.
In the past only “theme developers” could create a theme, now “theme creators” will be able to create themes using tools like block patterns, global styling, and Full Site Editing templates. In the future creators will likely be able to save and share their creations. She notes that themes of the future probably won’t look like what we call a theme today.
I’ve read this article several times. The first few times I focused on what seemed like a logical fallacy, switching from “theme developers” to “theme creation.” She talks a lot about developing themes and then redefines creating a theme as using “beyond content” Gutenberg. They aren’t equivalent. It felt like seeing an article saying “you can cook a 7 course meal in 30 minutes” and then when you read it the author tells you to buy take out, heat it up, and add a few garnishes. I figured I wasn’t understanding it correctly so gave it a few more readings. This lead me to think maybe she was talking about the abstract concept of a theme as a collection of layout and style options, and users would be able to create their own “theme” in that sense. Most recently I’ve come to the conclusion that what she is saying is that “beyond content” Gutenberg will include a theme builder, you know, like Beaver Themer or Elementor Pro has. Yes, of course, that is what she is saying. It was hard for me to figure that out because she didn’t talk about it using the vocabulary I’m used to. That made me wonder if she has ever used a theme builder?
Gutenberg Is An Experiment
WordPress has a process for trying out new features, you introduce them as a feature plugin. From Make WordPress:
The Features as Plugins model was introduced in 3.7 as the way for features to be developed for inclusion in WordPress core. This model allows a feature to be built, tested, refined, and polished before it is considered as a merge candidate.
This is how the WordPress Rest API and a number of other big features were developed and eventually merged into core. The Gutenberg plugin was just such a “feature as plugin” experiment. It was merged into WordPress in version 5. Oops, Gutenberg does not appear on the features as plugins page, neither as closed, merged, or active. The Gutenberg plugin still exists and features being added to WordPress core are still being developed in that plugin (Full Site Editing being the active focus). The fact that Gutenberg is an ongoing experiment isn’t a bad thing. What’s problematic is that this is not acknowledged and it is not being handled as such. This makes it difficult for theme authors who have to tacitly support an ongoing experiment.
Gutenberg Will Get There In A Year
We talked about this in the Dynamic WordPress Facebook group. We all have been repeating the mantra that eventually Gutenberg will “get there,” that is, do in a good way what it currently cannot do but that page / theme builders do. There are a few problems with this:
- First, we are making business decisions based on an assumption about the future.
- Second, it is obvious that Gutenberg is being developed iteratively and not by design. As a result, there wasn’t a global design system in place and other foundational features when Gutenberg was released. This is part of the reason why Gutenberg the content editor is not yet stable. There is no reason to assume that custom field support, or whatever your hot feature is, will be in the next version.
- Third, we may be ignoring other solutions, established or emerging, that can happily coexist with future WordPress because we are thinking the features will appear in the next release.
So to sum up the overview of the landscape, classic themes currently rule. Soon hybrid themes will. Eventually full featured block based themes will replace hybrid themes. Agree or disagree?
In terms of clearing up fuzzy thinking, as Vitaliy Kiyko the developer of Builderius pointed out in the Dynamic WordPress group, we are better off speaking clearly rather than falling back on marketing speak. So, here is how I see it:
- Gutenberg the content editor is already a success. It is better for creating long form content than the classic editor.
- However, Gutenberg is an ongoing experiment. If we approach it like that we won’t have unreasonable expectations. We will expect glitches. We won’t expect pixel perfect control like we have with page builders. We will better appreciate theme authors who keep their themes better in sync with the latest version. We won’t feel bad if we are still using our page builder of choice. When we do use Gutenberg we will feel like pioneers and heroes, instead of failures who can’t figure out how to make it work.
- Block patterns are just like page builder templates. Great stuff, but not innovative.
- Full Site Editing is a site builder or theme builder just like many of the commercial offerings. Don’t expect it to be done in a year.
- Gutenberg is doing away with old kludges and workarounds. It is also inventing new ones. Writing CSS in a JSON file to define global styles seems architecturally wrong. I understand that a JSON file can be parsed easier than a stylesheet, but isn’t this another weird API workaround? Also, the templates that are shipped with block based themes are HTML files where the blocks are defined in HTML comments. This seems like another unusual choice, but maybe this is the cutting edge and cognitively correct solutions don’t exist yet?
I am an architectural idealist, meaning I’d like for software projects to be carefully planned and implemented. Consequently I notice the rough edges.
I am also an implementation pragmatist, meaning I’ll use what works. That is why I’ll be creating themes using the Gutenberg theme builder when it is ready “next year.”
From Around the Web
What’s Up Next?
As far as I know you can’t yet add custom fields to a template using the Full Site Editor. Nevertheless, I’m planning to see how far you can get creating templates.
Thank you for reading. I’d like to hear what you have to say about the newsletter content and what you are excited about. Feel free to comment or send me an email through the contact form.
August 10, 2021