function ImageHooks::fieldStorageConfigDelete

Implements hook_ENTITY_TYPE_delete() for 'field_storage_config'.

Attributes

#[Hook('field_storage_config_delete')]

File

core/modules/image/src/Hook/ImageHooks.php, line 355

Class

ImageHooks
Hook implementations for image.

Namespace

Drupal\image\Hook

Code

public function fieldStorageConfigDelete(FieldStorageConfigInterface $field) : void {
  if ($field->getType() != 'image') {
    // Only act on image fields.
    return;
  }
  // The value of a managed_file element can be an array if #extended == TRUE.
  $uuid = $field->getSetting('default_image')['uuid'];
  if ($uuid && ($file = \Drupal::service('entity.repository')->loadEntityByUuid('file', $uuid))) {
    \Drupal::service('file.usage')->delete($file, 'image', 'default_image', $field->uuid());
  }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.