You are here

function entity_example_field_extra_fields in Examples for Developers 7

Implements hook_field_extra_fields().

This exposes the "extra fields" (usually properties that can be configured as if they were fields) of the entity as pseudo-fields so that they get handled by the Entity and Field core functionality. Node titles get treated in a similar manner.

Related topics

File

entity_example/entity_example.module, line 370
Implements the basic functionality required to create and display an entity.

Code

function entity_example_field_extra_fields() {
  $form_elements['item_description'] = array(
    'label' => t('Item Description'),
    'description' => t('Item Description (an extra form field)'),
    'weight' => -5,
  );
  $display_elements['created'] = array(
    'label' => t('Creation date'),
    'description' => t('Creation date (an extra display field)'),
    'weight' => 0,
  );
  $display_elements['item_description'] = array(
    'label' => t('Item Description'),
    'description' => t('Just like title, but trying to point out that it is a separate property'),
    'weight' => 0,
  );

  // Since we have only one bundle type, we'll just provide the extra_fields
  // for it here.
  $extra_fields['entity_example_basic']['first_example_bundle']['form'] = $form_elements;
  $extra_fields['entity_example_basic']['first_example_bundle']['display'] = $display_elements;
  return $extra_fields;
}