function panelizer_entity_type_alter in Panelizer 8.3
Same name and namespace in other branches
- 8.5 panelizer.module \panelizer_entity_type_alter()
- 8.4 panelizer.module \panelizer_entity_type_alter()
Implements hook_entity_type_alter().
File
- ./
panelizer.module, line 39 - Hook implementations for the Panelizer module.
Code
function panelizer_entity_type_alter(array &$entity_types) {
/** @var \Drupal\panelizer\Plugin\PanelizerEntityManager $panelizer_manager */
$panelizer_manager = \Drupal::service('plugin.manager.panelizer_entity');
// Replace the entity view builder on any entity where we have a Panelizer
// entity plugin and the entity itself has a view builder.
foreach ($panelizer_manager
->getDefinitions() as $entity_type_id => $panelizer_info) {
if (isset($entity_types[$entity_type_id]) && $entity_types[$entity_type_id]
->hasHandlerClass('view_builder')) {
$entity_types[$entity_type_id]
->setHandlerClass('fallback_view_builder', $entity_types[$entity_type_id]
->getHandlerClass('view_builder'));
$entity_types[$entity_type_id]
->setHandlerClass('view_builder', '\\Drupal\\panelizer\\PanelizerEntityViewBuilder');
}
}
}