Сегодня попробовал добавить image_field в блок «Заголовок страницы».
Не знаю, возможно ли это?
Если это невозможно, можно ли добавить field_image в шаблон веточки?
Тнкс.
Сегодня попробовал добавить image_field в блок «Заголовок страницы».
Не знаю, возможно ли это?
Если это невозможно, можно ли добавить field_image в шаблон веточки?
Тнкс.
Приведенное ниже может вам помочь. Сначала я добавляю предложение темы для page_title, чтобы я мог контролировать место, где мне нужно перебрать шаблон. Я добавляю node_type - как суффикс к шаблону.
Затем я добавляю функцию предварительной обработки - убедитесь, что вы заменили подпись на тип, который вы хотите, «новости» в конце должны быть заменены вашим типом контента из первой функции.
Во второй функции я получаю поле под названием subtitle и добавляю значение в переменные, чтобы оно было доступно в шаблоне.
function mytheme_theme_suggestions_alter(array &$suggestions, array &$variables, $hook) {
if($hook === 'page_title') {
if($node = \Drupal::routeMatch()->getParameter('node')){
$node_type = $node->getType();
// suggestion must use _ and __ as per convention.
$suggestions[] = 'page_title__'.$node_type;
}
}
}
function mytheme_preprocess_page_title__news(&$variables) {
if ($node = \Drupal::routeMatch()->getParameter('node')) {
try {
if ($node->get('field_subtitle') && !$node->get('field_subtitle')->isEmpty()) {
$variables['sub_title'] =
$node->get('field_subtitle')
->get(0)
->get('value')
->getValue();
}
}catch(Exception $e){
\Drupal::logger('mytheme')->error($e);
}
}
}
Теперь в шаблоне вы увидите sub_title, доступный в файле шаблона, в моем случае это был заголовок страницы - news.html.twig - скопированный из page-title.html.twig и добавленный соответствующей переменной.