Шаблоны страниц

Можно создавать шаблоны для формирования отдельных страниц. Шаблоны страниц могут быть основаны на системном адресе страницы. Например если вы находитесь на странице node/1/edit, то шаблоны будут искаться в следующей последовательности:

page-node-edit.tpl.php
page-node-1.tpl.php
page-node.tpl.php
page.tpl.php

Если вы находитесь на странице http://example.com/tracker, то шаблоны будут искаться в следующей последовательности:

page-tracker.tpl.php
page.tpl.php

Если вы находитесь на странице http://example.com/user/1, то шаблоны будут искаться в следующей последовательности:

page-user-1.tpl.php
page-user.tpl.php
page.tpl.php

Если вы находитесь на странице http://example.com/taxonomy/term/1, то шаблоны будут искаться в следующей последовательности:

page-taxonomy-term-1.tpl.php
page-taxonomy-term.tpl.php
page-taxonomy.tpl.php
page.tpl.php

Если вы находитесь на странице http://example.com/, то шаблоны будут искаться в следующей последовательности:

page-front.tpl.php
page.tpl.php

Отметьте: шаблоны ищутся основываясь на системных адресах. Т.е. если вы задали альтернативный адрес вручную или используете модуль Pathauto, то шаблоны всё равно будут искаться по системному адресу и альтернативный адрес использоваться не будет.

Если вы хотите переключать шаблоны страниц основываясь на определённых правилах (например роли пользователя), то вы должны определить эти правила в шаблоне template.php, определив переменной $vars['template_files'] массив возможных шаблонов.

Пример определения шаблонов этой переменной можно посмотреть на странице Creating a separate admin theme.

Комментарии

Санхип's picture

а если я нахожусь на странице http://example.com/taxonomy/term/1/all
какой шаблон будет отвечать за эту страницу в первую очередь?

Анонимно's picture

page-taxonomy-term-1-all.tpl.php
page-taxonomy-term-1.tpl.php
page-taxonomy-term.tpl.php
page-taxonomy.tpl.php
page.tpl.php
наверно так

bran's picture

а если я хочу, чтобы своя страница пользователя показывалась так, а страницы других пользователей по-другому. Как это сделать?

Анонимно's picture

можно узнать порядом использования шаблонов по данной ссылке? Желательно с привязкой к модулю ubercart
/admin/store/orders/25/invoice

Анонимно's picture

Лично у мея page-taxonomy-term-1-all.tpl.php почему то не работает. Если создавать просто шаблон одного термина, вроде: page-taxonomy-term-1.tpl.php то всё получается.

Комментировать

CAPTCHA
Тест, который позволяет исключить автоматическую отправку сообщений. Эта мера направлена против спама.
Image CAPTCHA
Введите числа, которые показаны на картинке.