В семёрке контент является блоком, а его заголовок почему то отдельным элементом в page.tpl.php. Чтобы это исправить, нужно во первых, добавить в template.php:
/**
* Реализация hook_preprocess_block().
*/
function [THEMENAME]_preprocess_block(&$vars) {
if ($vars['block_html_id'] == 'block-system-main') {
$vars['elements']['#block']->subject = drupal_get_title();
}
}
а во вторых, удалить из page.tpl.php
вывод переменной $title
.
Написанное актуально для
Drupal 7
Комментарии
Заголовок был отдельным элементом и во всех предыдущих версиях и это всегда меня удивляло. То есть контент ноды выводился в шаблоне node.tpl.php, а заголовок — в page.tpl.php. Причем никакого разумного объяснения этому не было. Видимо, несмотря на все глубокие изменения в 7-ке, разработчики не решились попутно исправить засевшие в коде несуразности.
в шестёрке в этом ещё был какой-то смысл — нода это лишь частный случай страницы, заголовки у другого типа контента ведь тоже надо выводить :) а в семёрке видимо об этом не задумывались, мол так привычнее
извините, что немного не по теме, а как вывести $title внутри блока с использованием php фильтра?
echo drupal_get_title();
Хотел в одном месте, то есть в одной функции переопределить $head_title и $title
так нет, пришлось в две фукции влезать:
Может можно как то из [THEMENAME]_preprocess_html передать title в [THEMENAME]_process_page?
А то тут http://api.drupal.org/api/drupal/includes!theme.inc/function/template_process_page/7
её просто берут и из ничего создают
drupal_set_title()
Добрый день!
У меня данный способ не работает.
В Content ничего не появляется!
Подскажите в чем может быть проблема?
Спасибо! Все получилось, на конец-то!!!
А к предыдущему комментарию могу сказать что надо отключить модуль Exclude node title если устанавливал.
Странно что с 2013 года эта проблема еще актуальна!
Подскажите. Мне title надо поставить ниже некоторых элементов views. Но он всегда сверху. Попытки перемещать title в шаблонах views views-view-имя.tpl.php или связанного с ним шаблона типа материала page--тип.tpl.php успеха не принесли.
Решение данной статьи тоже не помогли. Как title сделать свободным для перемещений по странице для views ?
Спасибо большое за статью!
Есть одно но - у меня такой заголовок выводится через тег h2. Можно ли сделать его вывод через тег h1?
Переопределите шаблон блока
Добавить комментарий