Как создать шаблон для поля в конкретном типе материала для отдельного отражения?

17 июля 2019 в 20:53
Аватар пользователя engenes engenes 0 3 Решено

Есть материал портфолио portfolio
У него есть отражения map_objekt
Мне нужно создать отдельный шаблон для этого отражения в материале портфолио.
надо чтобы получилось что то вроде того

field--field-photowork--portfolio--map_objekt.tpl.php

но Drupal без дополнительного кода такое не умеет

Пожалуйста помогите решить задачу, может быть кто то знает, какой код прописать чтобы подключить этот файл?

Комментарии

ну вот есть типы материалов.
Для них шаблоны полей переопределяются вот так:
fiels--моеполе--мойтипматериала.tpl.php

У материалов есть дисплеи (отражения)
teaser, default, full, собственное...

мне нужно переопределить шаблон поля для отдельного типа материала для конкретного дисплея например анонса (teaser)

в этом случае логично назвать шаблон как то так:
fiels--моеполе--teaser--мойтипматериала.tpl.php но не срабатывает шаблон не подключается

вот наконец нашел нужный хук, извлек из аргумента нужные данные, и смог подключить шаблон с нужным именем

<?php
function моятема_preprocess_field(&$variables$hook) {
    
$variables['theme_hook_suggestions'][] = 'field__' $variables['element']['#field_name'] . '__' $variables['element']['#view_mode']. '__' $variables['element']['#bundle'];
}
?>

правда не знал как решить несколько раз с этим сталкивался, а тут задал вопрос и хук нашелся)

17 июля 2019 в 21:23