ZeroToWP

Block Theme

Quick Definition

A block theme is a WordPress theme built entirely with blocks. It uses HTML templates, a theme.json file for design settings, and the Site Editor for visual customization — replacing the PHP-based system of classic themes.

WordPress Block Themes documentation on wordpress.org

What Is a Block Theme?

A block theme is the modern way to build a WordPress theme. Instead of PHP template files, a block theme uses HTML files filled with block markup. Instead of the Customizer, it uses the Site Editor. Instead of scattered CSS, it uses a theme.json file to define colors, fonts, spacing, and layout in one place.

Block themes became part of WordPress in version 5.9 (January 2022) and represent the future direction of theme development. The default WordPress themes — Twenty Twenty-Two, Twenty Twenty-Three, Twenty Twenty-Four, and Twenty Twenty-Five — are all block themes.

A block theme needs just three things to work:

  • templates/index.html — The fallback template, written in block markup (HTML comments like <!-- wp:paragraph -->)
  • style.css — The theme's stylesheet with the required theme header (name, version, author)
  • theme.json — The configuration file that defines design settings (color palettes, font sizes, spacing, layout widths) and styles

Beyond these, block themes use /templates for page templates (single.html, page.html, archive.html) and /parts for reusable template parts (header.html, footer.html). All of these can be edited visually in the Site Editor — no code needed.

Block Theme vs Classic Theme

The differences are fundamental:

  • Templates — Block themes use HTML with block markup. Classic themes use PHP files with template tags.
  • Customization — Block themes use the Site Editor and Styles panel. Classic themes use the Customizer, widget areas, and Appearance > Menus.
  • Design system — Block themes define design tokens in theme.json. Classic themes scatter CSS rules across stylesheets.
  • Menus — Block themes use the Navigation block. Classic themes use wp_nav_menu() and the Menus screen.
  • Sidebars — Block themes use template parts. Classic themes use widget areas.
  • Code required — Block themes can be created and modified entirely in the browser. Classic themes require PHP, HTML, and CSS knowledge.

Classic themes are not going away — they are still fully supported and power the majority of existing WordPress sites. But all new development energy from WordPress core is focused on block themes.

Block Themes in Practice

If you are starting a new WordPress site today, a block theme is the recommended choice. Themes like Twenty Twenty-Five, Developer Blog, Flavor, and Flavor are built as block themes. You customize everything — header layout, footer content, typography, color scheme — through the Site Editor without touching a single file.

For theme developers, block themes are simpler to build. No functions.php is required (though you can still use one). No widget registration, no Customizer settings, no wp_nav_menu() calls. The theme.json file and HTML templates handle everything. In WordPress 7.0, block themes gain even more power with new blocks like Breadcrumbs, Icons, and responsive visibility controls.

Why It Matters

Block themes are where WordPress is heading. Understanding the difference between block and classic themes helps you choose the right theme for your project, decide whether to migrate an existing site, and future-proof your WordPress skills. If you are learning WordPress development, start with block themes — they are simpler, more visual, and aligned with the platform's roadmap.

Sources

Related Terms

Related Articles