Synced patterns have one asterisk: they live in the database. That is fine for a single site, but it means a theme cannot ship one. Theme patterns are files — portable, versioned, updateable — yet every insert is a disconnected copy. So you choose: a pattern that ships with the theme, or a pattern that stays in sync. Not both.
Synced Patterns for Themes — a free plugin from Twenty Bellows — removes the choice. It makes a theme pattern synced with one line in the file header:
<?php
/**
* Title: Call to Action
* Slug: mytheme/call-to-action
* Categories: banner
* Synced: yes
*/
?>
That pattern now behaves exactly like a synced pattern: insert it on twenty pages, edit the file, and all twenty pages update. Overrides work too, so instances can vary the pieces you have marked overridable while the layout stays locked.
No database rows — really
How it works
The plugin does not mirror your files into hidden posts. The file stays the single source of truth, and instances in your content are ordinary core/pattern blocks that reference the pattern by slug. At render time the pattern’s current file content is attached and rendered; in the editor, the same runtime composes what you see. Nothing to migrate, nothing to clean up, nothing to fall out of sync — deactivate the plugin and your content still contains standard pattern references, not broken shortcodes.
What this unlocks for theme authors
- Updateable sections. Ship a call-to-action in version 1.0, refine it in 1.1, and every site running the theme gets the improvement on update — no “please re-insert the new version” changelog entry.
- Version-controlled sync. The synced content is a file in your repository. Review it, diff it, revert it.
- Consistency as a feature. Sites built on your theme keep their key sections consistent by construction, not by discipline.
Where Pattern Builder fits
Pattern Builder includes this same runtime, so if it is installed you already have synced theme patterns — plus the part the file system never gave you: a UI. Flip any theme pattern between synced and unsynced from a panel, edit the file’s contents in the real WordPress editor instead of a code editor, and see synced instances update live. The two plugins coexist politely; install both and Pattern Builder simply takes over the runtime until it is deactivated, at which point the companion resumes with identical rendering.
One header line, and “edit once, update everywhere” becomes something a theme can promise.