function field_entity_field_storage_info in Drupal 8
Same name and namespace in other branches
- 9 core/modules/field/field.module \field_entity_field_storage_info()
Implements hook_entity_field_storage_info().
Related topics
File
- core/
modules/ field/ field.module, line 175 - Attach custom data fields to Drupal entities.
Code
function field_entity_field_storage_info(EntityTypeInterface $entity_type) {
if (\Drupal::entityTypeManager()
->getStorage($entity_type
->id()) instanceof DynamicallyFieldableEntityStorageInterface) {
// Query by filtering on the ID as this is more efficient than filtering
// on the entity_type property directly.
$ids = \Drupal::entityQuery('field_storage_config')
->condition('id', $entity_type
->id() . '.', 'STARTS_WITH')
->execute();
// Fetch all fields and key them by field name.
$field_storages = FieldStorageConfig::loadMultiple($ids);
$result = [];
foreach ($field_storages as $field_storage) {
$result[$field_storage
->getName()] = $field_storage;
}
return $result;
}
}