Переменные node.tpl.php для Drupal 7

Данная статья относится к разделу темизации, в ней мы поговорим о переменных файла node.tpl.php в Drupal 7. Файл служит шаблоном для отображения всех типом материалов(если для типа материала не создано отдельного шаблона). Чтобы создать шаблон для отдельного типа материала, необходимо создать файл с именем node--[node-type].tpl.php, например для материала "Статья" у которого машинное имя "article", файл шаблона будет иметь имя: node--article.tpl.php. Итак передем к перечню переменных.

Общие переменные
$title: Заголовок материала.
$content: Массив элементов материала(полей, терминов и т. д.). Для вывода полного содержимого необходимо использовать render($content). если нам необходимо вывести отдельное поля, тогда пишем render($content['field_example']). Для того чтобы отменить вывод поля(спрятать его), пишем hide($content['field_example']) или удалить unset($content['field_example']).
$user_picture Аватар создателя материала.
$date: Отформатированная дата создания материала, для вывода в своем формате необходимо применить функцию format_date() к переменной $created.
$name: Темизированное имя автора материала.
$node_url: Адрес текущего материала.
$display_submitted: Проверка на вывод информации об авторе и дате(в настройках материала).
$submitted: Информация о дате создания материала и его авторе(переменные $date, $name).
$classes: Строка содержащая классы по умолчанию, которые добавлются к элементу оформления и могут быть темизированы в CSS. Можно использовать $ classes_array в функциях предварительной обработки. Переменные по умолчанию которые могут быть использованы:

  • node: текущий тип шаблона;
  • node-[type]: текущий тип материала. например для статьи(article) будет "node-article";
  • node-teaser: содержимое в режиме анонса;
  • node-preview: содержимое в режиме просмотра;
  • node-promoted: содержимое опубликовано на главной странице;
  • node-sticky: содержимое поднято вверх;
  • node-unpublished: Содержимое неопубликовано, видно только администраторам;
$title_prefix (array): Массив добавляемы некоторыми модулями перед заголовком материала в шаблоне.
$title_suffix (array): Массив добавляемы некоторыми модулями после заголовком материала в шаблоне.

Другие переменные
$node: включает в себя данные, которые могут быть небезопасными.
$type: тип материала, например article, blog, page и т. д.
$comment_count: количество комментариев, у данного материала.
$uid: ID автора материала.
$created: дата создания материала в формате Unix.
$classes_array: массив css классов материала, строковая переменная классов: $classes.
$zebra: класс чередующий жлементы материала "odd", "even" (четный, нечетный). Полезно для анонсов.
$id: позиция материала.

Переменные состояния материала
$view_mode: режим просмотра, 'full', 'teaser' и т. д.
$teaser: флаг для отображения "анонс" (идентично $view_mode == 'teaser').
$page: флаг для полного отображения материала (идентично $view_mode == 'full').
$promote: сожержит значение настройки материала "разместить на главной".
$sticky сожержит значение настройки материала "Поднять вверх"
$status: сожержит значение настройки статуса материала ("Опубликовано", "Не опубликовано").
$comment: статус настроек для комментариев текущего материала.
$readmore: флаг для анонса материала или если содержимое не может отображаться полностью.
$is_front: если материал отображается на главной странице (именно потображается т. к. при установлении соответствующей галочки, отображение может быть страницей материала).
$logged_in: если материал просмотривает зарегистрированный пользователь.
$is_admin: если материал просмотривает admin.

Вот и все переменные доступные для использования в шаблонах сожержимого для Drupal 7.

Теги: Drupal 7
Новости