Normal view
- Gutenberg Times Podcast
- Gutenberg Changelog #70 – Gutenberg 13.7, Template Creation Enhancements and First Full-Site Editing Themes in Woo Commerce Marketplace
- Gutenberg Times Podcast
- Gutenberg Changelog #69 – Gutenberg Releases, WordPress 6.0.1, the Create Block Theme
Gutenberg Changelog #69 – Gutenberg Releases, WordPress 6.0.1, the Create Block Theme
Gutenberg Changelog #68 – WordCamp Europe, Gutenberg 13.4 and WordPress 6.1
Gutenberg Changelog #67 Gutenberg 13.2 and 13.3, WordPress 6.0 and more
Gutenberg Changelog #66 – Gutenberg 13.1, New Zealand, InnerBlocks
- Gutenberg Times Podcast
- Gutenberg Changelog #65 – Gutenberg 13.0, WordPress 6.0, Inline Token Proposal and more
Gutenberg Changelog #65 – Gutenberg 13.0, WordPress 6.0, Inline Token Proposal and more
Gutenberg Changelog #64 – Gutenberg 12.9, Example Repo, and Inline Tokens
- Gutenberg Times Podcast
- Gutenberg Changelog #63 – Block Pattern Directory, WebFonts API and Gutenberg 12.8
Gutenberg Changelog #63 – Block Pattern Directory, WebFonts API and Gutenberg 12.8
- Gutenberg Times Podcast
- Gutenberg Changelog #62 – Gutenberg 12.7, a New Call for Testing, the Web Fonts API Arrival
Gutenberg Changelog #62 – Gutenberg 12.7, a New Call for Testing, the Web Fonts API Arrival
Block Theme Building Tips
When building block themes there is often more than one way to achieve the same thing. It’s often not clear which of these options is preferable. Below I outline some tips and guidelines that I find helpful. The guiding principle here is to remove as much complexity as possible from the theme; instead block themes should be using the affordances provided by Gutenberg.
1. Avoid using CSS
As much as possible, block themes should avoid providing CSS. Gutenberg increasingly offers design tools which allow theme builder to control the design of the theme without using CSS. If it is not possible to achieve a particular design without CSS please create an issue for it on Gutenberg so we can consider adding a design tool to achieve the design.
2. Reuse patterns rather than implementing custom templates
As the number of block themes we build grows we will have an ever increasing number of templates and template parts in each theme. In practice there are a small number of patterns which can be reused on many themes. We should be aiming to reuse existing patterns rather than implementing new templates. This means we need clever patterns which are able to reuse settings from theme.json.
3. Prefer theme.json to block settings
Connected to the point above, when we want to change the appearance of a block in a template or a pattern it is usually better to do so in the theme.json file than in the block template. This means that the design will be used for all instances of the block, not just the edited instance. It also keeps templates design agnostic, so that they be reused (see above).
What other tips do you have for building block themes?

- Gutenberg Times Podcast
- Gutenberg Changelog #61 – Gutenberg 12.6, Planning for WordPress 6.0 and Universal Blocks
Gutenberg Changelog #61 – Gutenberg 12.6, Planning for WordPress 6.0 and Universal Blocks
- Gutenberg Times Podcast
- Gutenberg Changelog #60 – Restricting Customization in a Full-Site Editing World, Gutenberg 12.5 and Roadmap for WordPress 6.0
Gutenberg Changelog #60 – Restricting Customization in a Full-Site Editing World, Gutenberg 12.5 and Roadmap for WordPress 6.0
- Gutenberg Times Podcast
- Gutenberg Changelog #59 – Gutenberg 12.4, Developer Hours, Extensibility of the Block Editor and more
Gutenberg Changelog #59 – Gutenberg 12.4, Developer Hours, Extensibility of the Block Editor and more
- Gutenberg Times Podcast
- Gutenberg Changelog #58 – Gutenberg 12.2 and 12.3, WordPress 5.9 RC and DevNotes for Full-Site Editing and Block Themes
Gutenberg Changelog #58 – Gutenberg 12.2 and 12.3, WordPress 5.9 RC and DevNotes for Full-Site Editing and Block Themes
- Gutenberg Times Podcast
- Gutenberg Changelog #57 – Gutenberg 12.1, Block Theme.json Builder, WordPress 5.9 Beta 2
Gutenberg Changelog #57 – Gutenberg 12.1, Block Theme.json Builder, WordPress 5.9 Beta 2
- Gutenberg Times Podcast
- Gutenberg Changelog #56 – Gutenberg 12.0, WordPress 5.9 Release Schedule, Navigation Block and Site Editor
Gutenberg Changelog #56 – Gutenberg 12.0, WordPress 5.9 Release Schedule, Navigation Block and Site Editor
Create A Blockbase Child Theme
We have been working on a plugin to help you create a Blockbase child theme. The idea is that you can use the existing tools to make changes to a Blockbase theme, and then export a bundle of templates and theme.json as a new child theme.
I tried to create a new theme called “Typewriter” using these tools.
Step 1 – Setup
Install and activate Blockbase , and the Create Blockbase Theme plugin.
Step 2 – Global Styles
Make changes to your site using the Global Styles editor. First I chose some new colors:

You can also use the Global Styles editor to update Typography and Layout settings:

Then I changed the fonts, using the Customizer:

I made all my changes using the Global Styles editor and the Customizer, but you might want to make more changes directly to the theme.json file after the theme is created.
Step 3 – Templates
Edit your templates using the Site Editor:

I managed to achieve everything I needed to in this theme using the Site Editor, but for some things you might need to edit the template files directly once the theme is created.
Step 4 – Export
Under Appearance there will be a new page called “Create Blockbase Theme”:

You can add the details for the theme here. These will be used in the style.css file. When you click the “Create Blockbase Theme” button, a zip file will be downloaded, which contains all the files for your theme. Here’s mine:
Step 5 – Test
At this point you should have a zip file containing a working theme. You can upload this to your WordPress and activate it.
The theme contains an screenshot file, which you will need to update manually.
Now when you look at the frontend of your site it should look the same as it did before you activated the new theme. Here’s my new theme:


Further changes
Once the theme has been created you can unzip the theme zip file and make further changes to the theme files. This might be necessary to make more advanced changes to the theme. You can:
- Modify and add configuration in the theme.json file.
- Update the html template files in
block-templatesandblock-template-parts - Add custom CSS to the file in
assets/theme.css
Feedback
We’d love you to try this new tool and let us know how you get on in the comments!

Gutenberg Changelog #55 – Gutenberg 11.9, WordPress 5.9, Navigation Block
- Gutenberg Times Podcast
- Changelog #54 – Gutenberg 11.8-Navigation Block, Full-site Editing and the Plugin Machine
Changelog #54 – Gutenberg 11.8-Navigation Block, Full-site Editing and the Plugin Machine
- Gutenberg Times Podcast
- Changelog #53 – WordPress 5.9 Go/No Go decision, Gutenberg releases 11.6 and 11.7, and Themes and Styles for the Editor
