xandeadx.ru Блог музицирующего веб-девелопера

Drupal → Отдельный шаблон для тизеров (анонсов)

Опубликовано в

1. Добавить в template.php:

/**
 * Preprocess function for node.tpl.php.
 */
function THEMENAME_preprocess_node(&$vars) {
  $node_type_suggestion_key = array_search('node__' . $vars['type'], $vars['theme_hook_suggestions']);
  if ($node_type_suggestion_key !== FALSE) {
    $node_view_mode_suggestion = 'node__' . $vars['type'] . '__' . $vars['view_mode'];
    array_splice($vars['theme_hook_suggestions'], $node_type_suggestion_key + 1, 0, array($node_view_mode_suggestion));
  }
}

2. Создать в папке темы шаблон с именем node--[TYPE]--teaser.tpl.php.

3. Сбросить кэш.

Написанное актуально для Drupal 7
Похожие записи

Комментарии RSS

Спасибо огромное, в целом все работает!
Однако у меня появилась некоторая трудность. По задумке мой сайт в одном из типов материала не должно иметь комментарии, вернее слово "комментарий" должно быть изменено на "отзыв". Я поменял согласно данному примеру - habrahabr.ru/sandbox/53531/ При этом возникла необходимость в изменении шаблона тизера. Поменял по Вашему примеру, после чего в тизерах вернулись "комментарии", а в ноде остались "отзывы".

Когда удаляю шаблон тизера, везде появляются "отзывы".

Прошу подсказать что мне нужно изменить, чтобы создав шаблон для тизера по Вашему примеру, у меня остались "отзывы".

Надеюсь понятно объяснил. А также надеюсь на Вашу помощь!

С Уважением, Сергей.

Спасибо!

Оставить комментарий

Содержимое этого поля является приватным и не будет отображаться публично. Если у вас есть аккаунт в Gravatar, привязанный к этому e-mail адресу, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступные HTML теги: <a> <i> <b> <strong> <code> <ul> <ol> <li> <blockquote> <em> <s>
  • Строки и параграфы переносятся автоматически.
  • Подсветка кода осуществляется с помощью тегов: <code>, <css>, <html>, <ini>, <javascript>, <sql>, <php>. Поддерживаемые стили выделения кода: <foo>, [foo].

Подробнее о форматировании