У меня возникли проблемы с установкой ограничения проверки имени термина таксономии.
function MYMODULE_entity_bundle_field_info_alter(&$fields, $entity_type, $bundle) {
if ($entity_type->id() === 'taxonomy_term' && $bundle === 'my_taxonomy_type') {
вид ($ поля ['имя']);
если (isset($fields['имя'])) {
kint('найдено имя');
}
}
}
Когда я перестраиваю кеш с помощью drush, вид()
выводит значение $поля['имя']
как ноль
.
Когда я использую вид()
вывести значение $поля
, Я вижу это:
массив (4) [
'родительский' => Drupal\Core\Field\BaseFieldDefinition (7) (
защищенный 'тип' -> строка (16) "entity_reference"
защищенный 'propertyDefinitions' -> ноль
защищенная «схема» -> ноль
защищенные «индексы» -> массив (0) []
защищенный 'itemDefinition' -> Drupal\Core\Field\TypedData\FieldItemDataDefinition (3) (
защищенное 'fieldDefinition' -> Drupal\Core\Field\BaseFieldDefinition (7) РЕКУРСИЯ
защищенное «определение» -> массив (2) [
'type' => строка (27) "field_item:entity_reference"
'настройки' => массив (3) [
'target_type' => строка (13) "taxonomy_term"
'обработчик' => строка (7) "по умолчанию"
'handler_settings' => массив (1) [
'target_bundles' => массив (1) ОГРАНИЧЕНИЕ ГЛУБИНЫ
]
]
]
защищенный 'typedDataManager' -> ноль
)
защищенное «определение» -> массив (7) [
'label' => Drupal\Core\StringTranslation\TranslatableMarkup (5) (
защищенный 'translatedMarkup' -> ноль
защищенные «параметры» -> массив (0) []
защищенный 'stringTranslation' -> ноль
защищенная 'строка' -> строка (12) "Родители терминов"
защищенные «аргументы» -> массив (0) []
)
'description' => Drupal\Core\StringTranslation\TranslatableMarkup (5) (
защищенный 'translatedMarkup' -> ноль
защищенные «параметры» -> массив (0) []
защищенный 'stringTranslation' -> ноль
protected 'string' -> string (25) «Родители этого термина».
защищенные «аргументы» -> массив (0) []
)
'количество элементов' => целое число -1
'провайдер' => строка (8) "таксономия"
'field_name' => строка (6) "родительский"
'entity_type' => строка (13) "taxonomy_term"
'bundle' => строка (18) "my_taxonomy_type"
]
защищенный 'typedDataManager' -> ноль
)
'field_int_count' => Drupal\field\Entity\FieldConfig (35) (
защищено 'удалено' -> логическое значение false
... резать
защищенный 'id' -> строка (56) "taxonomy_term.card_group_private.field_term_date_created"
защищенное 'field_name' -> строка (23) "field_term_date_created"
защищенный 'field_type' -> строка (8) "datetime"
... резать
"taxonomy_term.card_group_private.field_term_ref_author"
защищенное 'field_name' -> строка (21) "field_term_ref_author"
защищенный 'field_type' -> строка (16) "entity_reference"
]
имя
поля нигде нет. Как я могу добавить ограничение на имена терминов таксономии?