Create Block Theme


Create Block Theme is a new plugin which makes it easier for theme builders to use the existing Site Editor tools to create new block themes.

What does it do?

This is a plugin which provides tools to enable theme builders to create block themes. There are five different ways of using it:

  1. Export: The current theme gets exported as a zip file, along with the user’s changes. This is essentially the same as the export option in the Site Editor
  2. Create a child theme
    Creates a new child theme with the currently activated theme as a parent.
  3. Clone the current theme
    Creates a new theme by cloning the activated theme. The resulting theme will have all of the assets of the activated theme combined with the user’s changes.
  4. Overwrite theme files
    Saves user’s changes to the theme files and deletes the user’s changes.
  5. Create blank theme
    Generates an “empty” theme inside of this site’s themes directory.

How do I use it?

This tool is designed to complement the existing tools in the Site Editor. You can build your theme using the Site Editor, and then use this plugin to save your changes in the way that is most convenient for your use case. You can see this in action in Designing a theme in the WordPress Editor by @beafialho.

The Training Team is busy working on a course for Learn WordPress all about creating block themes using the Create Block Theme plugin.

Who is it for?

This plugin is aimed at theme builders – both designers and developers. It is useful for sharing your designs between multiple sites or users. If you’re just building a site for yourself you probably don’t need it.

Note: This is a new tool and it may have unexpected behaviour. It is not advised to use it on a production site.

Why isn’t this in Gutenberg?

Some features from this plugin (theme export) have made their way from this plugin into Gutenberg. This plugin is aimed at more advanced theme builders, but would be confusing for average users. The best way to make these tools available for people who want them is to put them in a separate plugin which is easy to install.

At the moment the UI of this plugin is totally separate from Gutenberg. In time we expect more integration with the Site Editor UI, to make it easier to access these features.

How do I contribute to the plugin?

Everyone is encourage to contribute to this plugin in GitHub, by creating pull requests or issues.

Thanks

Thanks to everyone who has helped build this great tool:
@onemaggie @pbking @mikachan @mmaattiiaass @jeffikus @jffng @mrdollu @chaosexanima @phillsav

Questions

If you have any questions please ask in the comments.