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

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

Аватар пользователя oleg220 oleg220 26 марта 2012 в 14:16

Привет.
Для товаров у меня задаются заголовки (title) при помощи модуля page_title шаблоном. Этот же модуль позволяет задавать title прямо на странице.
Логично было бы модулю работать так: Если заголовок задан на странице ноды, то он переписывает шаблонный заголовок.
Однако, этого не происходит, шаблон распространяется на все ноды этого типа материалов.
Создать отдельный тип материалов не предлагать, т.к. может в будущем понадобится сменить title у какой-то ноды - не менять же её тип потом.
Есть какие-то пути решения?

Комментарии

Аватар пользователя SergeyKiev SergeyKiev 27 февраля 2013 в 22:16

Я так понимаю, что нужно внести изменения в template.php моей темы оформления.

$page_title = t(drupal_get_title());
$title_separator = theme_get_setting('configurable_separator');
if (drupal_is_front_page()) { // Front page title settings
switch (theme_get_setting('front_page_title_display')) {
case 'title_slogan':
$vars['head_title'] = drupal_set_title($title . $title_separator . $slogan);
break;
case 'slogan_title':
$vars['head_title'] = drupal_set_title($slogan . $title_separator . $title);
break;
case 'title_mission':
$vars['head_title'] = drupal_set_title($title . $title_separator . $mission);
break;
case 'custom':
if (theme_get_setting('page_title_display_custom') !== '') {
$vars['head_title'] = drupal_set_title(t(theme_get_setting('page_title_display_custom')));
}
}
}
else { // Non-front page title settings
switch (theme_get_setting('other_page_title_display')) {
case 'ptitle_slogan':
$vars['head_title'] = drupal_set_title($page_title . $title_separator . $slogan);
break;
case 'ptitle_stitle':
$vars['head_title'] = drupal_set_title($page_title . $title_separator . $title);
break;
case 'ptitle_smission':
$vars['head_title'] = drupal_set_title($page_title . $title_separator . $mission);
break;
case 'ptitle_custom':
if (theme_get_setting('other_page_title_display_custom') !== '') {
$vars['head_title'] = drupal_set_title($page_title . $title_separator . t(theme_get_setting('other_page_title_display_custom')));
}
break;
case 'custom':
if (theme_get_setting('other_page_title_display_custom') !== '') {
$vars['head_title'] = drupal_set_title(t(theme_get_setting('other_page_title_display_custom')));
}
}
}

Но как это увязать с
<?php
if ($node->field_custom_title[0]['view'] == "") {
echo $head_title;
} else {
echo $node->field_custom_title[0]['view'];
}
?>

пока не знаю