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.

Pas 1 – Configuració

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

Pas 2 – Personalitzacions d’estils

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.



23 de març de 2023 1 resposta
This is amazing work. Fonts, custom patterns, it all gets carried over. For me something important is missing: If I tinker with the theme a bit and export it, there is no way to change the version number. Every time I import a new version of the exported theme it gets imported as a new theme. I tried editing the version number in the zip file but that doesn't change it.
5 de març de 2023 1 resposta
Doesn't automatically push the footer to the bottom of the page whether there is content or not.
25 de febrer de 2023 1 resposta
Create Child theme does not bring over Header and Footer Template Parts. error msg. is "Template part has been deleted or is unavailable: header" and "Template part has been deleted or is unavailable: footer". Using Twenty Twenty-Three Theme v. 1.0, Gutenberg v. 15.2.1, and Create Block theme v. 1.6.0. Create Block Theme extremely useful. I love the Additional CSS in Global but it disappears with the latest Gutenberg update.
22 de febrer de 2023 1 resposta
I hope to find out that I am doing something wrong or that the environment I'm working with is the problem but so far I've had a lot of problems with the plugin. This plugin was recommended to me as a good way to get started in theme development. I had been hoping to move away from Divi as my website builder of choice. I've tried cloning the Twenty Twenty-Three theme but the clones have been broken in a couple of ways. I've had template elements (header and footer) be missing and "layout" options missing from blocks that were there on the original theme. I tried creating a blank boilerplate theme instead. I've run this multiple times on the same 'raw' WordPress install (created in LOCAL) and this has resulted in three different outcomes: a critical error, an incomplete theme that is just a folder that is empty except for a read me file, and also a successful blank theme.
Llegiu totes les 19 ressenyes

Col·laboradors i desenvolupadors

«Create Block Theme» és programari de codi obert. La següent gent ha col·laborat en aquesta extensió.


“Create Block Theme” s'ha traduït a 12 configuracions regionals. Gràcies als traductos per les seves aportacions.

Tradueix “Create Block Theme” a la teva llengua.

Interessats en el desenvolupament?

Navegueu pel codi, baixeu-vos el repositori SVN, o subscriviu-vos al registre de desenvolupament per fisl de subscripció RSS.

Registre de canvis


  • Update screenshots
  • Fix manage fonts UI and backend when no settings are defined in theme.json
  • Variable font weight range


  • Manage fonts minor refactor. Move elements from PHP to react
  • Allow otf font file upload
  • Local fonts section implementation in React
  • Fonts outline sidebar
  • Update Google Fonts JSON data from API


  • (Fix refactor regression) Remove white spaces from theme slug


  • Refactor font-management class
  • Refactor create-block-theme class
  • fix manage theme font menu casing
  • Add phpcs exception to avoid PHP8.0 incompatibility errors
  • Fix blank theme screenshot fatal error
  • Fix lint issues using auto fixer tool
  • Update Google Fonts JSON data from API
  • Fix CSS lint issues
  • Fix PHP lint issues
  • Fix JS lint issues
  • Add lint validation to PR workflows
  • fix package lock sync issue


  • Add: input for theme tags
  • Placeholder URL change to TT3
  • Remove white spaces from theme slugs


  • Update main readme and add supporting docs
  • Fix Depreciation Warning
  • Cleanup Manage Theme Fonts UI
  • Bundle template images into theme assets and make their urls relative
  • Cloned themes: Add original theme name to readme.txt and style.css
  • Font families collapsed by default
  • Fix: Unexpected action when clicking Collapse chevron
  • Lint all CSS files
  • Fix: composer scripts doesn’t work on Windows
  • Use Gutenberg Theme JSON resolver if its available
  • Update Google Fonts JSON data from API
  • Replacing mkdir() calls with WordPress wp_mkdir_p() function


  • check for DISALLOW_FILE_EDIT and simplify permission check logic
  • Load google fonts data from url
  • Separate styles and templates reset
  • Add spinner while google fonts load instead of showing a blank page
  • Add: code linting scripts
  • Update Google Fonts JSON data from API
  • Avoid pre commit verifications on Github actions to prevent action errors caused by linting problems


  • Fix: browser console errors
  • Fix: Adding or removing fonts fails in some Windows environments
  • Add placeholder screenshot to boilerplate theme
  • Refactor: Add Google Fonts section from vanilla JS to React app
  • Adding demo text settings


  • 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)


  • Versió inicial.