I built a Craft multisite a few years ago. Most of the site pages feature a content builder matrix field with multiple blocks. Many sections are shared across sites.

When I built the site, it seemed like a good idea to have the matrix blocks in the content builder field only propagate to the site they were created in. This would allow each site to have its own, unique content on pages that were shared across all sites. However, I have now decided based on how the site has been used that matrix blocks should propagate across all sites with shared sections.

What happens now:

  • Entry is created on the primary site and matrix blocks are added
  • Entry is saved, and matrix blocks are propagated to all sites that share the section
  • If an entry one site is updated (text, image change), that change is not replicated across other sites

What I would like: I would like the same first two steps to happen, but in the third step I would like all other sites to receive the update that was made to the one site's entry.

I have tested something on a local dev site. I changed the matrix field's propagation to "all sites the owner element is saved in" and that seems to work. However, changing that propagation method results in every single entry throughout the site have duplicate matrix blocks; for example, if an entry had three matrix blocks in the content builder field, then every site now has 30 matrix blocks (three blocks from each entry times 10 sites). I prevented this matrix block duplication by quickly going to Queue Manager and releasing the job that was propagating the blocks across sites, but I'm wondering if there's a better way to achieve what I'm looking for.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.