Skip to content
at_.DEVELOPMENT

theme.json is the whole theme now

Most of what used to live in functions.php and a pile of PHP templates now belongs in one JSON file. That is a bigger deal than it sounds.

January 8, 20267 min read
wordpressfull-site-editingtheme.json

For a long time, “theme development” meant PHP templates, a functions file that grew without bound, and a build step to make the CSS behave. theme.json collapses a surprising amount of that into declarative configuration — color palettes, spacing scales, typography presets, block supports — read directly by the block editor and the front end alike.

The part worth writing about properly is where the line still is: what genuinely belongs in theme.json now, and what still needs a template part or a block variation to do the job. That line moved twice in the last year alone.

Longer write-up with real examples coming.

Alexander Talaat
Washington, D.C.

Full-stack developer and WordPress architect writing about headless CMS, Next.js and AI-assisted builds.

Work with me
Get new posts by email

No spam. One or two emails a month, unsubscribe anytime.