function hook_entity_view_alter in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/Entity/entity.api.php \hook_entity_view_alter()
Alter the results of the entity build array.
This hook is called after the content has been assembled in a structured array and may be used for doing processing which requires that the complete entity content structure has been built.
If a module wishes to act on the rendered HTML of the entity rather than the structured content array, it may use this hook to add a #post_render callback. Alternatively, it could also implement hook_preprocess_HOOK() for the particular entity type template, if there is one (e.g., node.html.twig).
See the Default theme implementations topic and drupal_render() for details.
Parameters
array &$build: A renderable array representing the entity content.
\Drupal\Core\Entity\EntityInterface $entity: The entity object being rendered.
\Drupal\Core\Entity\Display\EntityViewDisplayInterface $display: The entity view display holding the display options configured for the entity components.
See also
Related topics
2 functions implement hook_entity_view_alter()
Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.
- content_translation_language_fallback_candidates_entity_view_alter in core/
modules/ content_translation/ content_translation.module - Implements hook_language_fallback_candidates_OPERATION_alter().
- quickedit_entity_view_alter in core/
modules/ quickedit/ quickedit.module - Implements hook_entity_view_alter().
File
- core/
lib/ Drupal/ Core/ Entity/ entity.api.php, line 1361 - Hooks and documentation related to entities.
Code
function hook_entity_view_alter(array &$build, Drupal\Core\Entity\EntityInterface $entity, \Drupal\Core\Entity\Display\EntityViewDisplayInterface $display) {
if ($build['#view_mode'] == 'full' && isset($build['an_additional_field'])) {
// Change its weight.
$build['an_additional_field']['#weight'] = -10;
// Add a #post_render callback to act on the rendered HTML of the entity.
$build['#post_render'][] = 'my_module_node_post_render';
}
}