Я строю модуль с помощью hook_preprocess_node (). Я создал новый режим просмотра для сущности узла под названием «vacancy_teaser», используя hook_entity_info_alter ()
, это отображается в моих настройках отображения и просмотра
, поэтому я хочу использовать шаблон, включенный в мой модуль, когда используется этот режим просмотра.
мой код:
/**
* Implements hook_preprocess_node().
*/
function vacancies_preprocess_node(&$vars) {
if($vars['view_mode'] == 'vacancy_teaser') {
$vars['theme_hook_suggestions'][] = 'node_vacancy_teaser';
}
}
мой файл шаблона называется: ´node-vacancy-teaser.tpl.php´, но не используется в выводе моего представления $vars['view_mode'] == 'vacancy_teaser'
в представлении.(проверено)
но где $vars['theme_hook_suggestions'][] = 'node_vacancy_teaser';
ищет файл шаблона?почему-то он не включен / не используется.
по-видимому, в drupal 7 использование подчеркивания дублирования требуется по некоторым причинам.node_ vacatures _vacancy_teaser.tpl.php, помещенный в папку с активным шаблоном, похоже, делает свое дело ... хотя я не думаю, что это изящное решение, поскольку файл tpl.php отделен от модуля.