Configuring Layout Builder permissions

Last updated on
3 January 2024

This documentation needs review. See "Help improve this page" in the sidebar.

Access to Layout Defaults

More information on Layout Defaults can be found on this handbook page.

Layout Defaults are layouts that apply to all nodes/entities of a given content type/bundle.

Accessing Layout Defaults for an entity type require two permissions

  • Configure any layout, a Layout Builder permission
  • Administer display: Entity Type , a Field UI permission

For example, granting permission to access layout defaults on node content types would require the permissions Node: Administer display and Configure any layout

Access to Layout Overrides

More information on Layout Overrides can be found on this handbook page.

There are two types of permissions that grant access to Layout Overrides:

Entity Type - Bundle: Configure all layout overrides or (Entity Type): Configure all layout overrides
Allows access to any layout attached to entities of the given type and bundle (for example, layout overrides for any individual "Article" content item).
Entity Type - Bundle:  Configure layout overrides for content items that the user can edit
Grant access only to layouts attached to entities of the given type and bundle which the current user also has permission to edit (for example, a layout of draft content the user may edit, but not a layout of another user's content).

Access to create and edit single-use custom blocks

The Create and edit custom blocks permission allows the layout editor to add new content to the page with single-use custom blocks. Users without this permission will only be able to place existing content blocks on the site. (Previously, the configure any layout permission itself provided this functionality.) This permission is required to add custom block content to either default layouts or layout overrides.

It is impractical to edit layouts unless the Contextual Links module is enabled and the layout editor has the "Use contextual links" permission.

:Specification for accessing contextual links related permission:

1. Contextual Links Module:
Ensure that the Contextual Links module is enabled. Navigate to Extend > Module List and verify that "Contextual Links" is enabled. If not, enable it and save the configuration.
2. User Permissions:
Grant the "Use contextual links" permission to users who will be editing layouts.
Go to People > Permissions.
Find the permission named "Use contextual links" and ensure the appropriate roles (like editors, administrators) have this permission enabled.
Save the permissions configuration.
3. Layout Editing Permissions:
Assign permissions related to layout editing:
Ensure users have permissions to edit content types or specific entities for which they need to override layouts.
Navigate to People > Permissions.
Grant permissions like "Administer layout builder" or "Edit layout overrides" to relevant roles as needed.
Save the permissions configuration.

Example scenario

Create 3 roles with one user each: editor, designer, publisher. Give editor and designer permission to create drafts, and publisher permission to publish. Give editor permission to create and edit articles, and designer permission to configure all article layout overrides. Give all these roles permission to use contextual links.

Log in as an editor and create and edit articles. For each save, you can only choose "Draft" as the state. You do not have access to the Layout tab.

Log in as a designer, and so long as there already existed a published revision of the article, you can access it, and via it, the Layout tab. This worked even if there is also a forward draft. When making Layout changes, you can only choose "Draft" as the state, and the newly created revision incorporates the changes from the latest draft created by the editor.

Log in as a publisher, view the revisions created by both the editor and the designer, and publish them.

Contrib modules

If you find the permissions provided aren't sufficient for your project, you can also add these contributed modules:

Help improve this page

Page status: Needs review

You can: