Layout Replicate
This module allows site builders to quickly copy Layout Builder layouts, sections, or blocks from one node to another or between language translations. It simplifies the process of duplicating complex layouts, saving time and effort compared to manual rebuilding.
Layout Replicate allows site builders to copy Layout Builder layouts or individual sections and blocks from one node to another, or between language translations of the same node. Instead of manually rebuilding complex layouts on multiple nodes or translations, you can replicate them in seconds with a single form.
---
Features
- Clone an entire layout, a single section, or a single block from any Layout Builder-enabled node
- Copy layouts across nodes or across languages (e.g. from English to Arabic)
- Deep-clone inline blocks creates fully independent copies of inline block content entities, so editing one does not affect the other
- Reusable blocks preserve their shared reference (correct Drupal behaviour)
- Block order within sections is preserved during cloning
- Activity log at /admin/reports/layout-replicate tracks every clone operation with the source/target node, languages, and timestamp
- PHP API for developers who need to trigger cloning programmatically
- Compatible with Drupal 10 and 11
---
How to use
After enabling the module, a Clone Layout tab appears on every Layout Builder-enabled node (for users with the administer nodes permission).
Open the tab and choose what to clone:
- Entire layout: replaces all sections and blocks on the target node with a copy of the source layout
- A section: appends one section (with all its blocks) to the end of the target layout
- A block: appends one block into a new section at the end of the target layout
Then select the source language, optionally pick a destination node, choose the target language, and submit. After a successful clone you are redirected directly to the Layout Builder editor on the target node.
---
Requirements
- Layout Builder enabled on the content type with per-node overrides allowed
- Core node and block_content modules
- language and content_translation modules only needed for multi-language workflows