WordPress plugin intelligence profile

Synced Patterns for Themes

Let block markup supply the content for a pattern, so one pattern can carry the design and another can carry the words.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 7.1
Current version2.0.1
WordPress coverageTested up to WordPress 7.1
Minimum stackWP 6.8 · PHP 7.4
Directory statusactive
Last directory update29 Aug 20262mo ago
Active installations40Adoption metric — not a quality score
WordPress.org ratingNo WordPress.org ratings yet
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records Synced Patterns for Themes version 2.0.1 as active, updated 2mo ago and tested up to WordPress 7.1.

Overview

About this plugin

A theme pattern is usually two things at once: a design, and the words that happen

to be sitting in it. Reuse the design and you copy the words with it — so a theme

that wants five hero sections ships five near-identical patterns.

This plugin separates the two. A pattern marks the parts of itself that are meant

to be filled in, and any other pattern — or template, or post — can then use that

design and say what goes in it:

-- wp:pattern {"slug":"mytheme/hero","content":{"headline":{"content":"Built for the long haul"}}} /-->

One design pattern. As many uses as you like, each with its own content, all

expressed in theme files.

The content attribute here is not new: it is the same attribute WordPress

already puts on a synced pattern when you edit one of its fields. All this plugin

does is let a theme pattern accept it too.

Marking the parts to fill in

In the design pattern, give each block you want filled a name and mark it as a

slot. This is core’s Pattern Overrides syntax, unchanged:

-- /wp:heading -->

name names the slot. `__default` opens up every attribute the block

supports, and is the form to reach for: it is the only one WordPress will let

someone type into inside a synced pattern.

Naming attributes one by one instead — {"content":{"source":"core/pattern-overrides"}} —

also works when the content comes from markup, and is worth using when you want

to fill exactly one attribute and leave the rest alone.

Filling them in

Anywhere a pattern can be used, content supplies the values — keyed by slot

name, then by attribute name:

jpg", "alt": "A tin roof" } }} /-->

Any slot you leave out keeps the design pattern’s own content, so a pattern’s

defaults double as its documentation.

Keeping a pattern linked

By default a pattern is a starting point: insert it and you get ordinary blocks

you are free to change. Add Synced: yes to a pattern’s header and it behaves

like a synced pattern instead:

>

Inserting it stores a reference rather than a copy. The design is rendered from

the theme file and cannot be edited on the page — only the content slots can.

Edit the file and every notice on the site changes with it, keeping whatever

content each one was given.

The block toolbar offers Reset, which puts the pattern’s own content back,

and Detach, which breaks the link and leaves ordinary editable blocks with

the instance’s content baked in.

Unlike version 1, nothing is copied into the database to make this work: the

theme file stays the only source of truth.

Slots in a synced pattern have to bind with __default. WordPress renders any

other binding read-only inside an instance — that is its rule, not this

plugin’s.

Where it works

Patterns, templates, template parts, post content, and patterns inside other

patterns, to any depth.

Inserting an ordinary pattern that fills another gives you plain editable blocks

with the right content already in them. Inserting one marked Synced: yes gives

you a live instance instead, still linked to its file.

What can be filled

The blocks and attributes WordPress supports for Pattern Overrides:

  • Paragraph and Heading — content
  • Image — url, alt, title, id
  • Button — text, url, linkTarget, rel
  • List Item — content (WordPress 7.1 and later)

The list is core’s, not this plugin’s, so it grows as core’s does.

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • block bindings
  • block patterns
  • synced patterns
  • themes
Compatibility & maintenance

Compatibility & maintenance

Tested with WP 7.1

Marked as tested with the current WordPress 7.1 release.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to7.1
Minimum requirementsWordPress 6.8 · PHP 7.4
Update activity29 Aug 20262mo ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

No tracked version or compatibility changes have been recorded by WP PlugIndex yet.

Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.