function hook_field_delete_revision in Drupal 7
Define custom revision delete behavior for this module's field types.
This hook is invoked just before the data is deleted from field storage in field_attach_delete_revision(), and will only be called for fieldable types that are versioned.
Parameters
$entity_type: The type of $entity.
$entity: The entity for the operation.
$field: The field structure for the operation.
$instance: The instance structure for $field on $entity's bundle.
$langcode: The language associated with $items.
$items: $entity->{$field['field_name']}[$langcode], or an empty array if unset.
Related topics
2 functions implement hook_field_delete_revision()
Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.
- file_field_delete_revision in modules/
file/ file.field.inc - Implements hook_field_delete_revision().
- image_field_delete_revision in modules/
image/ image.field.inc - Implements hook_field_delete_revision().
1 invocation of hook_field_delete_revision()
- field_attach_delete_revision in modules/
field/ field.attach.inc - Delete field data for a single revision of an existing entity. The passed entity must have a revision id attribute.
File
- modules/
field/ field.api.php, line 637 - Hooks provided by the Field module.
Code
function hook_field_delete_revision($entity_type, $entity, $field, $instance, $langcode, &$items) {
list($id, $vid, $bundle) = entity_extract_ids($entity_type, $entity);
foreach ($items as $delta => $item) {
// For hook_file_references, remember that this file is being deleted.
$item['file_field_name'] = $field['field_name'];
if (file_field_delete_file($item, $field, $entity_type, $id)) {
$items[$delta] = NULL;
}
}
}