This module allows content builders to select between node layouts and to assign reusable content (blocks) and page-specific content (fields) via a drag-and-drop UI.

If you're familiar with Panels, you can think of Layout Per Node as "Panels Lite."

IMPORTANT : upcoming core layout builder solution

Before you consider using this module, become familiar with the active work on Layout Builder, a core project included in 8.5.x. Its scope will eventually encompass everything Layout Per Node provides, and more. And it will be core code. For these reasons, it may be unwise to use Layout Per Node, and we (the maintainers) may likewise discontinue active support of this module.

Introductory Video

https://youtu.be/E8f8oL7dZkQ

Features

  • Uses core Layout Discovery to find available layouts
  • Requires minimal setup
  • Provides granular permissions
  • Drag-and-drop layout editing

Compatibility/Dependencies

  • PHP: 5.5.9 or above
  • Drupal core: 8.3.x or above*
  • This module has no dependencies on other contributed modules

* Note: As part of the Drupal 8.4.x release, some regions were renamed in the layouts provided by layout_discovery core (see here). If you were using layout_per_node prior to 8.4.x, nodes that use these core layouts may appear to have lost their layout, since the regions no longer exist. You will either need to resave the nodes with the new region data or write a script that updates the region names in the layout_per_node table programmatically.

When should I use this module?

The content layout landscape is broad (think Panels and Paragraphs). Here's when we think this module the right approach:

Scenario Solution
You can wait for the 8.x-5.x release of Drupal core Layout Builder
Site builders are the content builders & are technically savvy Panels
Site architecture requires fixed variants of page design Panels
Some content needs fine-grained control; some needs a simple UI Panels + Layout Per Node
Panels does not feel user-friendly to content builders Layout Per Node
Panels grants too much control to content builders Layout Per Node
Site architecture requires complex field 'bundles' with limited layout Paragraphs
Site architecture requires complex field 'bundles' with flexible layout Paragraphs + Layout Per Node
Supporting organizations: 

Project information

Releases