Create Block Theme


This plugin allows you to:
– Create a new theme, blank theme, child theme or style variation.
– List and preview font families and font faces embeded in your theme.
– Embed Google Fonts in your theme.
– Embed local font assets in your theme.

The plugin is development only — not intended for use on production websites, but used as a tool to create new themes.

Step 1 – Setup

Install and activate the Create Block Theme plugin.

In the WordPress Admin Dashboard, under Appearance there will be three new pages called:
– Create Block Theme
– Manage fonts

Step 2 – Style Customizations

Make changes to your site styles and templates using the Site Editor. You can also include new fonts using the plugin options.

Step 3 – Export

Still in the WordPress dashboard, navigate to “Appearance” -> “Create Block Theme” section. Select one of the available options and then, if necessary, add the details for the theme here. These details will be used in the style.css file. Click “Generate” button, to save the theme.



25 Gennaio 2023
At this stage this plugin is a total bug fest. It would be great if it worked. Almost nothing works as shown. Can't import it's own child themes. Can't write to local fonts. And when you manually FTP your new font into the right folder and edit the theme.json file it works. For a day. Then for whatever reason the next day - only one font variation will work. Double checked everything. Re uploaded new theme.json. Because I need PT Sans Narrow to work with the regular and bold (for squeezing headings in) this is a pain. The only fix I could come up with was to edit theme.json with the Bold PT Sans renamed as my-swear-word-font. That worked. Still can't export a child theme after the update. And to think the TOP MAN at WordPress flouted this.
23 Gennaio 2023
Love it, and it's finally a clean and easy to use solution to send our theme users to, if they want to add a custom font or create a child theme for any purpose really.It's also great to add fonts to our themes, although it would be great, if it would work with variable fonts and WOFF2.
25 Dicembre 2022
Ein sehr gutes, nützliches Werzeug!
18 Novembre 2022
This plugin will let you create a block theme easily. It generates all the code so you can focus on design. I hope the authors will keep up the good work on this plugin and add even more features in the future.
31 Ottobre 2022 5 risposte
Great plugin for creating child themes. It does two simple things - creating a child theme and configure Google Fonts. The plugin has great potentials and I think it can go a bit further to be a powerful toolset. As the plugin name suggests, it works only with block themes such as Twenty Twenty-Two and similar. When I have a non-block theme activated, the plugin link tabs don't show up at all, and I'm wondering why it's not working. To make the plugin a bit more user foolproof, the link tabs should show up anyway and provide some warning message when a non-block theme is active. Also I think we can go beyond the two simple functions of creating a child theme and Google Fonts. The option to add other online font services such as Adobe would be nice (maybe just an easy way the add their embed link.) It would be much more powerful if the plugin can somehow convert or configure non-block themes?
29 Settembre 2022
I used it to create child theme and it worked. Why is this plugin not so popular? I've been wasting my time in creating child themes manually which used to be pain. I wish I knew this plugin earlier.
Leggi tutte le recensioni di 13

Contributi e sviluppo

“Create Block Theme” è un software open source. Le persone che hanno contribuito allo sviluppo di questo plugin sono indicate di seguito.


“Create Block Theme” è stato tradotto in 10 lingue. Grazie ai traduttori per i loro contributi.

Traduci “Create Block Theme” nella tua lingua.

Ti interessa lo sviluppo?

Esplora il Codice segui il Repository SVN iscriviti al Log delle Modifiche. Puoi farlo tramite RSS con un lettore di feed.

Changelog (registro delle modifiche)


  • Specify node and npm versions, add nvmrc file
  • Add theme screenshot uploading
  • Manage fonts: Demo text editable
  • Update Google Fonts JSON data from API


  • Remove font face: avoid unwanted removal of fontfamily.
  • Add missing spaces to option labels


  • Updating Tested up to: 6.1
  • I18N: Some new UI strings are not translatable
  • Replace “current theme” with “active theme” (or “currently active theme”)
  • Improve translation process by removing trailing spaces
  • Fonts: remove font files from theme assets folder if the font face/family is removed.
  • Refactor to read raw theme.json data instead of using core methods
  • Update Google Fonts JSON data from API


  • Fixes the spelling of definition
  • Fixing readme contributors
  • Add contributor username to readme
  • Update GitHub action to avoid deprecation warning
  • Update Google Fonts JSON data from API
  • Update Google Fonts JSON data from API
  • Check permission before running functions that need file write permissions
  • Allow previewing system font


  • Moving assets files to be auto updated by the release action


  • Auto update assets using a github action


  • Auto release: commit updated php file with the new version


  • auto update version of php file


  • Automatic release improvements


  • Automatic release improvements


  • Update .distignore


  • Updating google fonts data
  • Force https to load Google fonts preview
  • Add the ability to select/unselect all google font variants
  • Merge branch ‘trunk’ into try/manage-fonts
  • Update google fonts JSON data automatically using a repo action
  • Merge branch ‘trunk’ into release-action
  • Merge branch ‘trunk’ into try/manage-fonts
  • Merge branch ‘try/manage-fonts’ into release-action
  • Manage theme fonts
  • Automate release: build, version bump, changelog, deploy to
  • Automate release


  • Add translation domain (#121)
  • Check for nonce index (#120)
  • Validating mime type of font file on server side (#119)


  • Add capabilities and nonce checks (#118)


  • Correcting version number


  • Embed Google fonts and local font files in theme (#113)
  • Change button text (#112)
  • Add check and directory creation for template and parts folders. (#110)
  • Change theme.json schema of blank theme if Gutenberg isn’t installed. (#107)


  • update links, screenshots of the new changes (#97)
  • Add $schema and use Gutenberg classes (#99)
  • Update readme to include latest features (#100)
  • Generate $schema URL in the same way as core. (#105)


  • Save a theme variation (#90)
  • Make UI string ‘Create Block Theme’ can be translatable (#92)


  • Add option to create blank theme. (#70)
  • Improve form instructions (#76)
  • Form cleanup and Theme name check (#77)
  • Get the correct merged theme.json data (#88)


  • Initial version.