Drupal is a registered trademark of Dries Buytaert
drupal 11.3.7 Update released for Drupal core (11.3.7)! drupal 11.2.11 Update released for Drupal core (11.2.11)! drupal 10.6.7 Update released for Drupal core (10.6.7)! drupal 10.5.9 Update released for Drupal core (10.5.9)! cms 2.1.1 Update released for Drupal core (2.1.1)! drupal 11.3.6 Update released for Drupal core (11.3.6)! drupal 10.6.6 Update released for Drupal core (10.6.6)! cms 2.1.0 Update released for Drupal core (2.1.0)! bootstrap 8.x-3.40 Minor update available for theme bootstrap (8.x-3.40). menu_link_attributes 8.x-1.7 Minor update available for module menu_link_attributes (8.x-1.7). eca 3.1.1 Minor update available for module eca (3.1.1). layout_paragraphs 2.1.3 Minor update available for module layout_paragraphs (2.1.3). ai 1.3.3 Minor update available for module ai (1.3.3). ai 1.2.14 Minor update available for module ai (1.2.14). node_revision_delete 2.0.3 Minor update available for module node_revision_delete (2.0.3). moderated_content_bulk_publish 2.0.52 Minor update available for module moderated_content_bulk_publish (2.0.52). klaro 3.0.10 Minor update available for module klaro (3.0.10). klaro 3.0.9 Minor update available for module klaro (3.0.9). layout_paragraphs 2.1.2 Minor update available for module layout_paragraphs (2.1.2). geofield_map 11.1.8 Minor update available for module geofield_map (11.1.8).

layout_builder_perms

478 sites Security covered
View on drupal.org

This module allows for more granular access control to Layout Builder by providing a set of permissions.

1.x

Features:

  • control access to layout builder page
  • control access to create/remove sections
  • control access to add and configure blocks
  • control access to edit block content
  • control access to reordering blocks
  • control access to pages user owns

2.x

The 2.x version of this module automagically generates a set of permissions based on available layouts, content types and block types. It provides an API module that defines a LayoutBuilderPermission plugin type and a set of submodules that provide plugins of this type for common use cases.

One can also define their own permissions. The Layout Builder Advanced Permissions module uses plugin discovery to find and apply permissions. To add your own
permissions, you can add a class that extends \Drupal\layout_builder_perms\LayoutBuilderPermissionBase and is
annotated with the \Drupal\layout_builder_perms\Annotation\LayoutBuilderPermission annotation. The class file should
be created in a ./src/Plugin/LayoutBuilderPermission folder in your custom module.

Each plugin should define a permission for a single operation in the layout builder. Supported operations are:

  • Add a section: section_add
  • Update a section: section_edit
  • Remove a section: section_remove
  • Add a block: block_add
  • Configure a block: block_config
  • Move a block: block_reorder
  • Remove a block: block_remove

To create a plugin for each of these operations in a given context you can use a plugin deriver. A base class
\Drupal\layout_builder_perms\LayoutBuilderPermissionPluginDeriverBase is available to make your life easier here.

See the Layout Builder Advanced Permissions Global submodule for an example.

Activity

Total releases
3
First release
Jan 2025
Latest release
8 months ago
Release cadence
101 days
Stability
100% stable

Release Timeline

Releases

Version Type Release date
2.2.1 Stable Aug 13, 2025
2.2.0 Stable Jan 23, 2025
2.1.3 Stable Jan 23, 2025