function LayoutBuilderHooks::entityTypeAlter

Implements hook_entity_type_alter().

Attributes

#[Hook('entity_type_alter')]

File

core/modules/layout_builder/src/Hook/LayoutBuilderHooks.php, line 93

Class

LayoutBuilderHooks
Hook implementations for layout_builder.

Namespace

Drupal\layout_builder\Hook

Code

public function entityTypeAlter(array &$entity_types) : void {
  /** @var \Drupal\Core\Entity\EntityTypeInterface[] $entity_types */
  $entity_types['entity_view_display']->setClass(LayoutBuilderEntityViewDisplay::class)
    ->setStorageClass(LayoutBuilderEntityViewDisplayStorage::class)
    ->setFormClass('layout_builder', DefaultsEntityForm::class)
    ->setFormClass('edit', LayoutBuilderEntityViewDisplayForm::class);
  // Ensure every fieldable entity type has a layout form.
  foreach ($entity_types as $entity_type) {
    if ($entity_type->entityClassImplements(FieldableEntityInterface::class)) {
      $entity_type->setFormClass('layout_builder', OverridesEntityForm::class);
    }
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.