The best place to design a pattern is the editor — real blocks, real preview, no PHP. The best place to keep a finished pattern is often the theme — versioned, portable, shipped to every site. Historically, getting a pattern from one home to the other was a chore: copy the markup into a new PHP file, write the header comment by hand, re-upload the images somewhere stable, fix every URL, test, repeat in reverse if you ever change your mind.
Pattern Builder makes conversion a menu item, in both directions.
User pattern → theme pattern
Converting to a theme pattern writes a proper file into the active theme’s patterns/ directory — title, slug, categories, and sync status carried over into the header. The important part is the images: any media-library images the pattern uses are copied into the theme and the markup is rewritten to reference them there, so the pattern no longer depends on one site’s uploads folder. The file is now the source of truth, ready to commit.
Theme pattern → user pattern
Going the other way, the file’s content becomes a normal pattern in the database and its bundled images are imported into the media library, URLs rewritten to match. Useful when a site is drifting away from its theme and needs to own its sections, or when a content team should be able to edit a pattern that started life as a developer artifact.
What changes — and what to watch
- Ownership. Theme patterns update with the theme; user patterns belong to the site. Convert in the direction of whoever should own future edits.
- Sync survives. A synced pattern stays synced across the conversion — as a file it uses the
Synced: yesheader, as a post it uses the native mechanism. - Child themes win. Conversions write to the active (child) theme, which is the correct place — parent updates will not overwrite your patterns.
Draft in the editor, graduate to the theme, demote back when a site needs custody — a pattern’s home becomes a decision you can revisit, not a commitment you made on day one.