public EntityFieldManager::getFieldMapByFieldType($field_type)
Gets a lightweight map of fields across bundles filtered by field type.
Parameters
string $field_type: The field type to filter by.
Return value
array An array keyed by entity type. Each value is an array which keys are field names and value is an array with two entries:
- type: The field type.
- bundles: An associative array of the bundles in which the field appears, where the keys and values are both the bundle's machine name.
Overrides EntityFieldManagerInterface::getFieldMapByFieldType
File
- core/lib/Drupal/Core/Entity/EntityFieldManager.php, line 478
Class
- EntityFieldManager
- Manages the discovery of entity fields.
Namespace
Drupal\Core\Entity
Code
public function getFieldMapByFieldType($field_type) { if (!isset($this->fieldMapByFieldType[$field_type])) { $filtered_map = []; $map = $this->getFieldMap(); foreach ($map as $entity_type => $fields) { foreach ($fields as $field_name => $field_info) { if ($field_info['type'] == $field_type) { $filtered_map[$entity_type][$field_name] = $field_info; } } } $this->fieldMapByFieldType[$field_type] = $filtered_map; } return $this->fieldMapByFieldType[$field_type]; }
Please login to continue.