Опубликовано:
Скрываем заголовок материала
Если нужно скрыть заголовок определенного типа материала из вывода.
В файле page.tpl.php в месте, где выводится заголовок, заменяем строки, например:
if ($title):
<h1 class="page-title"><?php print $title; ?></h1><?php endif; ?>
Вместо неё устанавливаем следующее значение:
<?php if ($title && $node->type !== 'тип_материала') : ?>
<h1><?php print $title; ?></h1>
<?php endif; ?>
тип_материала заменяем на машинное название типа материала, в котором нужно заголовок убрать.
Так же можно указать несколько типов материалов:
<?php if ($title && $node->type !== 'тип1' && $node->type !== 'тип2' && $node->type !== 'тип3') : ?>
Комментарии
Я вставил :
<?php if ($title && $node->type != 'blog'): if ($is_front){ print '<h2 class="title">'. $title .'</h2>'; } else { print '<h1 class="title">'. $title .'</h1>'; } endif; ?>
<?php print render($title_suffix); ?>
Получил:
Parse error: syntax error, unexpected ';' in ...\page.tpl.php on line 94
Что не так?
Во превых, исправьте HTML-значения амперсанда, стрелы и кавычек. Вы скопировали их вместе с ошибкой формата (в посте исправил отображение).
Во вторых, используйте правильный синтаксис.
Похоже у Вас должно получится что то вроде этого:
Не забудьте учесть Ваш тип содержимого в этой строке
Вот более правильный синтаксис:
Фокус не удался...
ошибка пропала, а заголовок блога остался...
Ну, так проверка идет на материалы отличные от типа 'blog'.
Он и не должен пропасть, он должен вывестись как первый или 2-й заголовок. И то, на главной странице.
<blockquote>Ну, так проверка идет на материалы отличные от типа 'blog'.</blockquote>
это как в Вашем примере, дальше проходят материалы кроме 'blog', они (оставшиеся) сортируются : если на главной , то выводим с тегом H2.. иначе H1.
<blockquote>Он и не должен пропасть,</blockquote>
тогда и Вашем примере не должен пропадать!
P.S. как вставлять цитаты без <blockquote></blockquote>, может добавьте этот тег к разрешенным в формате ввода
В моем примере title выводится если страница не является материалом типа "Блог". Иначе не выводится (я вывожу title отдельно, в шаблоне материала).
Да спасибо понял, работает.
А как еще убрать с главной title "blog"?
Друпал выдает: "Notice : Trying to get property of non-object dans include() (ligne 94 dans ...\sites\all\themes\zeropoint\templates\page.tpl.php)."
Это именно строка "if ($title && $node->type !== 'blog')", почему?
Добавьте проверку на наличие $node: