Шаблоны страниц и нод в Drupal 7
Т.к. я до сих пор дружу с Drupal 7, но не все о нем помню и не все полезные ссылки у меня до сих пор сохранены, я бесчестно и без разрешения автора спиздил этот материал. Прости меня автор.
Страница обслуживания
maintenance-page–[offline].tpl.php
maintenance-page.tpl.php
- шаблон страницы обслуживания. Отображается когда включен режим обслуживания сайта. И часто эта страница выглядит некрасиво, если её не менять. Для этого и существует шаблон maintenance-page.tpl.php.
maintenance-page--offline.tpl.php
- шаблон страницы, отображающийся при ошибках, связанных с базой данных.
У этих двух шаблонов есть особенность - они включают в себя полную разметку HTML страницы, т.е. содержит всю страницу целиком, включая head и body.
Шаблоны нод
node–[type|nodeid].tpl.php
Пожалуй самые используемые шаблоны, т.к. довольно часто необходимо изменить разметку для ноды или для всех нод одного типа. Например, необходимо сделать страницу товара. У товара есть поля, которые необходимо вывести в определённых местах страницы. Это можно сделать очень просто, создав шаблон для определённого типа ноды товара.
Базовый шаблон, используемый для отображения любых нод называется node.tpl.php
.
node--nodeid.tpl.php
где nodeid - ID ноды. Шаблон используется если необходимо изменить разметку конкретной ноды. Например шаблон node–1.tpl.php задает разметку для первой ноды.node--type.tpl.php
где type - тип ноды. Если необходимо указать разметку для всех нод одного типа используется этот шаблон. Например node–article.tpl.php
задаёт разметку для всех нод типа article.
Шаблоны страниц
page–[front|internal/path].tpl.php
Базовый шаблон для страниц: page.tpl.php.
page--node--edit.tpl.php
- задаёт шаблон страницы редактирования и создания ноды.page--node--1.tpl.php
- задаёт шаблон страницы для ноды с id.page--node.tpl.php
- шаблон для всех страниц с нодой.page--front.tpl.php
- очень полезный шаблон, использующийся для отображения главной страницы сайта.page--taxonomy.tpl.php
- шаблон страницы для терминов таксономииpage--taxonomy--term--1.php
- шаблон страницы для термина таксономии с tid = 1
UPD: Этим способом можно переопределить шаблон страницы Drupal, выводимой через модуль Views. Для этого нужно создать новый шаблон page--[viewurl]
, где viewurl - путь страницы. Например, для страницы http://site.ru/views-page/ нужно создать шаблон с именем page--views-page.tpl.php
.
Подробнее про шаблоны views я написал в отдельной статье: Шаблоны блоков, страниц, полей для модуля views Drupal 7.
UPD: В Drupal 7 нет стандартных шаблонов для страниц ошибок 404, 403. Так же, по умолчанию нет возможности объявить свой шаблон страницы для отпределённых типов нод. Но это легко реализуется. Как это сделать можно прочитать здесь: Создание кастомных шаблонов в теме Drupal 7.
Про шаблоны блоков, комментариев и полей вы можете почитать в соотвествующей статье: Шаблоны блоков, комментариев и полей Drupal 7.
Так же, есть очень хорошая статья (Drupal 7 Template (Theme Hook) Suggestions) на официальном сайте Drupal, где описываются еще шаблоны форума, голосований, таксономии и т.д.: Template (theme hook) suggestions.
Чуть не забыл. Вы можете почитать меня в твиттере или телеграме, посмотреть мои фотографии в инстаграме, подружиться со мной в PSN, позлить меня на твиче пока я играю или посмотреть в записи. А самые лучшие человеки могут меня поддержать деньгой.