The issue: Layout gives great control for overall layout building, but does not scale well for editing when using many different layouts. Example: Site using 20 different layouts redesigns their header to use a different amount of regions:

  • Instead of using 2 rows of 2 for a total of 4 regions.
  • they will now need 5 rows, 2 x 1 & 3 x 3 = total of 12 regions.

currently, (and please correct me if I'm wrong) we would have to attend to each of the 20 different layouts to add/change all the header regions... and then the footer.. etc..

this takes too long and seems redundant there are some work around solutions, like "Copy Block" & "Copy Region" but these do not affect the layout, only the blocks in the layout, which seems less useful since we can already reuse blocks.

Proposed Solution: Most simple solution would be an attachment system, like in Views.

  • Feature in Layout UI to attach another Layout - Above or Below the current layout.
  • Able to add (at least) one layout above and one below the current layout. (Header & Footer)

Use: Users could build a Layout for their Header and one for their Footer. Then these layouts could be easily added to any or all Layouts in use.

If a header change is needed, the user edits the HEADER layout - one time. They could make as many versions of their header as they like, and add a different one to each page if they wanted... The power of this feature would boost the usefulness of the layout system for virtually every project.

- or - instead of attachment before and after - go more modular - add layouts into layouts - under the "ADD ROW" button, put "ADD LAYOUT" button then - ask where to add the LAYOUT - 'Top, Bottom, before ROW (RowName)'

This also solves some of the other feature requests and issues around starting with a default set of regions, and/or blocks...
in this case, you could make your own default and add it to new layouts when you build them.

Similar Features exist:

This feature is similar to the DRUPAL module for VISUAL SHORTCODES in that you can save and add groups of regions.

GitHub Issue #: 
5585