Ниже предлагается код, который скрывает названия документов для указанных в нём типов документов. Приведённый код нужно добавить в файл template.php своей темы. Если в вашей теме уже используется функция _phptemplate_variables(), то исключите из этого скрипта её название.
function _phptemplate_variables($hook, $vars = array()) {
switch ($hook) {
case 'page':
$vars['breadcrumb_title'] = $vars['title'];
if (arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
if (in_array($node->type, array('page', 'story'))) {
$vars['title'] = '';
}
}
break;
}
return $vars;
}
В данном примере скрываются названия документов типа page и story.
Комментарии
Что-то не заработала эта штука.. (( может быть из-за ПатчАвто...?
А... вернее заработала, но только для основного материала, а тизер как был с заголовком, так и остался
В Гарланде в
node.tpl.php
вот такой код названия документов выводит:<?php if ($page == 0): ?>
<h1><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h1>
<?php endif; ?>
можно в него кроме проверки типа страницы, добавить проверку типа документа:
<?php if ($page == 0 && in_array($node->type, array('blog', 'poll', 'forum'))): ?>
<h1><a href="<?php print $node_url ?>" title="<?php print $title ?>"><?php print $title ?></a></h1>
<?php endif; ?>
node.tpl.php.
А у меня почему-то не работает.
У меня в двух типах материалов movie и filmmaker надо скрыть заголовки.
Добавила:
function ($hook, $vars = array()) {
switch ($hook) {
case 'movie':
$vars['breadcrumb_title'] = $vars['title'];
if (arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
if (in_array($node->type, array('movie'))) {
$vars['title'] = '';
}
}
break;
}
return $vars;
}
А заголовок все равно высвечивается.
Добавила:
function ($hook, $vars = array()) {
Наверное это из-за текста :(
Если в вашей теме уже используется функция _phptemplate_variables, то исключите из этого скрипта её название.
Тут имеется ввиду, что если в теме уже есть
function _phptemplate_variables
, то нужно вставить код с этой страницы в существующую функцию убрав из него лишнее. Если стандартный Гарланд выглядит:То вставив в эту
function _phptemplate_variables
и убрав верхние и нижние строчки у этого кода, для movie и filmmaker будет:У меня не хочет скрывать заголовки. Скрыть нужно тип материала recept. Я вписал такой код:
<?php
function _phptemplate_variables($hook, $vars = array()) {
switch ($hook) {
case 'recept':
$vars['breadcrumb_title'] = $vars['title'];
if (arg(0) == 'node' && is_numeric(arg(1))) {
$node = node_load(arg(1));
if (in_array($node->type, array('recept', 'page'))) {
$vars['title'] = '';
}
}
return $vars;
}
return array();
}
?>
Кстати это под какой друпал? У меня 6-й.