Delete all field data for an entity.
This hook is invoked from field_attach_delete() to ask the field storage module to delete field data.
\Drupal\Core\Entity\EntityInterface $entity: The entity on which to operate.
$fields: An array listing the fields to delete. The keys and values of the array are field UUIDs.
Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.
function hook_field_storage_delete(\Drupal\Core\Entity\EntityInterface $entity, $fields) {
foreach (field_info_instances($entity
->entityType(), $entity
->bundle()) as $instance) {
if (isset($fields[$instance['field_id']])) {
$field = field_info_field_by_id($instance['field_id']);
field_sql_storage_field_storage_purge($entity, $field, $instance);
}
}
}