Какой шаблон переопределить для изменения разметки reference поля на таксономию и как получить значения полей термина в этом шаблоне?

Главные вкладки

Аватар пользователя nathan158 nathan158 2 июня в 16:27

Есть нода, в которой есть поле reference на словарь таксономии.
В Manage display reference поля выбран формат Rendered entity, и view mode (отображение поля field_image)
Нужно переопределить шаблон и сделать примерно такую разметку:

<div style="background-color: {{content.field_hex.0.value}};">
 {{content.field_image}}  
</div>

Переменная может быть не content а какая-то другая. Это зависит от шаблона.

То есть если в термине таксономии есть добавленное изображение отображаем его, если нет выводим background-color куда передаем поле field_hex термина которое имеет тип Text (plain).

Подскажите пожалуйста какой шаблон нужно переопределять чтобы получить нужную разметку? field.html.twig? Или taxonomy-term.html.twig?
И как получить значение полей field_image и field_hex в в этом шаблоне?

Внутри переопределенного field.html.twig {{dump(item.content)}} показывает:

array:6 [
 "#taxonomy_term" => Drupal\taxonomy\Entity\Term {
#18802
}
 "#view_mode" => "product_colors"
 "#cache" => array:5 [
]
 "#theme" => "taxonomy_term"
 "#weight" => 0
 "#pre_render" => array:1 []
]

Внутри переопределенного taxonomy-term.html.twig

{{ dump(term) }}

показывает:

Drupal\taxonomy\Entity\Term {
 #entityTypeId: "taxonomy_term"
 // другие ключи
 #values: array:23 [
 #fields: array:3 [
 // другие ключи
}

Скриншот текущей разметки со страницы, где отображаются ноды с reference полем:

Комментарии

Аватар пользователя VasyOK VasyOK 2 июня в 16:45

1. Какой шаблон переопределить -
Подскажет /admin/config/development/settings опция Twig development mode
field.html.twig должен быть скопирован в папку темы
2. Как получить значение полей field_image и field_hex - не вспомню сходу.
Гуглить
"drupal render field value in another field template"