Wednesday, June 12, 2019

Drupal Layout Builder

Drupal's new Layout Builder is without argument an exciting new capability allowing authors more flexibility in building pages.

With that said, the addition of this functionality creates a new issue that project managers, architects, and developers need to be aware - something which seems to me will result in more complex content migrations from other CMS's to Drupal, and from Drupal to other CMS's.

In the Drupal projects I have been involved in, when we needed to provide space for image banners, ad banners, embedded Marketing Automation forms, slideshows, etc., we would either add fields to Drupal nodes referencing the entities to include; or we might add fields to those entities referencing the nodes they should be displayed on.

From a logical viewpoint, one can argue that separating these things from the node is a good thing - that they aren't part of the content, so this provides better separation between content and display.

However, when you think about migrating content from another CMS to Drupal, or from Drupal to another CMS, you can see that the use of the Layout Builder makes these activities more complex.  In migrating content to Drupal, first you will have to determine which content should be stored as content in nodes, and which should be stored as items in page layouts, and then custom scripts will have to be built for the latter (I would expect that as this knowledge proliferates in the community, there will eventually be an effort to enhance the Migrate module to enable import of layout items, but that functionality does not exist today).  Similarly, if you decide to use the Layout Builder, keep in mind that if you want to minimize the risk of lock-in, this will make migrating from Drupal more complex.