- Dark color scheme for the site CSS with prefers-color-scheme on the design's classes; no template or layout change.
- Make a redesign faster Fewer blocks per layout and cached pages: measure before and after.
- Check accessibility after a redesign Headings, alt texts, contrast, keyboard: check templates and the blocks editors filled.
- Roll out a redesign step by step New templates behind new view types first, then switch blocks page by page, then retire the old looks.
- Migrate examples, every page The 34 examples of the migrate phase of a site's life, each one task done in the Layouts editor and with templates. Move layouts, settings and templates between installations, versions and sites.
- Move all layouts to another installation exp:layouts export --all on the source, import with a dry run on the target; content is matched by remote ID and path.
- Move only some layouts --only with the layout identifiers; the shared layouts they link to come along.
- Move the mappings with the layouts --rules=none|selected|all decides which layout mappings travel; selected (the default) takes those of the chosen layouts.
- When the target lacks some content --unmapped=drop|keep|fail decides what happens to references to content the target does not have (default drop).
- Import beside the existing layouts --strategy=copy imports items that already exist as new copies, leaving the originals.
- Choose the strategy per layout --item=<key>=<strategy>,... sets skip, overwrite or copy per item, with the keys the dry run prints.
- Keep layouts in the project repository Commit exports next to the design extension; layouts.json in the archive can be compared between versions.
- Move a site's settings into its extension exp:ini move / move-all move blocks or whole siteaccess scopes into an extension (--create-extension --activate), with a dry run.
- Copy the menu settings to another siteaccess exp:ini copy copies a setting (a whole array with its reset line) from one scope to another.
- Change the settings files of another root exp:ini --root=<dir> works on the settings tree of another root (a copy of the installation); the INI cache there is not cleared, and the scope must exist there.
- Update stored component block identifiers Layouts from before the rename store components as ibexa_component_<type>; ext:explayouts:updatecomponentblockidentifiers renames them to exp_component_<type>.
- Update stored block links to remote IDs ext:explayouts:updatelinklocationreferences converts block links from ibexa-location://<id> to exp-remote-location://<remote id>.
- Use exp:layouts instead of the old helper scripts The ext:explayouts:* helpers (block_list, layout_info, layout_copy, layout_list, rule_list, share_create, collection_list) run on their own again since explayouts 1.4.42; exp:layouts stays the tool for export and import.
- Migrate a template-built site to Layouts Keep the design; turn the page layout's parts into template blocks of a shared Header / Footer; add page layouts per class; map them.
- Freeze a Layouts site into templates When a site must stop changing (an archive), its layouts can stay; freezing means fewer editors, not rewriting.
Documentation license
This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.
Exponential Copyright © 1998-2026 Exponential Foundation and 7x