1 field.api.php hook_field_display_ENTITY_TYPE_alter(&$display, $context)

Alters the display settings of a field on a given entity type before it gets displayed.

Modules can implement hook_field_display_ENTITY_TYPE_alter() to alter display settings for fields on a specific entity type, rather than implementing hook_field_display_alter().

This hook is called once per field per displayed entity. If the result of the hook involves reading from the database, it is highly recommended to statically cache the information.


$display: The display settings that will be used to display the field values, as found in the 'display' key of $instance definitions.

$context: An associative array containing:

  • entity_type: The entity type; e.g., 'node' or 'user'.
  • field: The field being rendered.
  • instance: The instance being rendered.
  • entity: The entity being rendered.
  • view_mode: The display mode, e.g. 'full', 'teaser'...

See also


Related topics


core/modules/field/field.api.php, line 2445
Hooks provided by the Field module.


function hook_field_display_ENTITY_TYPE_alter(&$display, $context) {
  // Leave field labels out of the search index.
  if ($context['view_mode'] == 'search_index') {
    $display['label'] = 'hidden';