Иерархия шаблонов в WordPress

иерархия шаблонов в wordpress template suggestions

Шаблоны в рамках темы WordPress, как и во многих других CMS, имеют строго определенную иерархию. Что это означает на практике?

Когда WP требуется определить какой шаблон (файл из папки темы) использовать, движок, в зависимости от типа страницы, проверяет наличие определенных файлов. Если существует несколько файлов, подходящих на роль шаблона текущей страницы, тогда выбирается наиболее «кастомный», подходящий для самого редкого случая.

Можно говорить о как минимум трех уровнях иерархии.

Базовый шаблон в иерархии WordPress

index.php

Это основной шаблон, который будет использован, если других вариантов не найдено. Тема оформления может вообще содержать только этот шаблон, и сайт будет работать, отображая все страницы, используя только его.

Уровень структурных единиц

Этот уровень «кастомизации» различает страницы по их назначению в структуре сайта. Почти любой сайт имеет главную страницу, разделы, ленты публикаций (новости, ленты по тегам, категориям и пр.) и конечные публикации (статьи, новости, работы портфолио и т.п.).

Для каждого случая WordPress проверяет свой шаблон:

  • arhive.php — ленты, архивы публикаций.
  • single.php — конечная статья блога (запись или кастомный тип).
  • page.php — страница раздела сайта (тип — страницы).
  • home.php — общая лента публикаций, если главная должна показывать ленту постов.
    • front-page.php — заменяет page.php, если главная — это выбранный раздел сайта, или заменяет home.php.
  • 404.php — шаблон для 404-й ошибки.
  • search.php — страница поиска по сайту.

Уровень с параметризацией

Следующий уровень уже зависит от определенных параметров. Это может быть и тип публикации, адрес или POST_ID страницы и т.п. В имени файла шаблона фигурирует значение одной из переменных.

Наиболее развита иерархия у архивов.

Авторские архивы

Могут собственный шаблон (author.php), в том числе и персонально для каждого автора (author-{$id}.php или author-{$nicename}.php).

Архивы таксономии (категории, теги и пр.)

Таксономия в WP имеет много лиц. Хотя категории, теги и пользовательские словари — суть одно, но WP поддерживает разные имена шаблонов для встроенных и пользовательских словарей.

Архив рубрик (категорий) — category.phpcategory-{$id}.phpcategory-{$slug}.php.

Архив меток (тегов) — tag.php, tag-{$id}.php, tag-{$slug}.php.

Архив таксономии — taxonomy.php, taxonomy-{$taxonomy}.php (имя словаря), tag-{$taxonomy}-{$term}.php (имя словаря и slug термина).

Календарные архивы

Архивы за год, месяц, день будет выводится в шаблоне date.php. Возможно ли деление по конкретным годам, месяцам и т.п. — я не проверял. :)

Конечные публикации и вложения

Вордпресс поддерживает страницы вложений. Вообще каждая картинка, файл, загруженные в «Медиафайлы», имеет свою страницу на сайте. Чтобы страница вложений отличалась от публикаций (single.php), используйте шаблон attachment.php. Для каждого типа вложения можно определить отдельный шаблон — {$mimetype}.php.

Если внешний вид разных типов публикаций отличается, можно создать шаблоны single-{$posttype}.php.

Страницы

После page.php в иерархии WordPress идет шаблон page-{$id}.php или page-{$slug}.php. Для каждой страницы в редакторе можно задать собственный шаблон. Нужно лишь дать шаблону имя, чтобы WP его «подхватил» и показал в списке.

Прочие шаблоны

Мы рассмотрели только часть шаблонов, которые используются только для оформления страниц сайта. Но WP распознает еще и шаблоны для особых элементов — блока комментариев (comments.php), сайдбаров (sidebar.php, sidebar-{$id}.php) и т.п.

Для них работают схожие принципы template suggestions.

Документация от WP.

Мало букафф? Читайте есчо !

Добавить favicon в шаблон на WP

Февраль 25, 2023 г.

Обычно настройки шаблона позволяют установить иконку через админ панель. Но если такой опции нет, то всегда можно добавить favicon программно. Для начала поместите вашу иконку favicon.png в каталог темы. Современные браузеры поддерживают разные ...

Читать

Кнопка для добавления записи в twitter

Октябрь 19, 2011 г.

Если у вас есть сайт, и вы хотите чтобы сослаться на ваш сайт было просто, то самый легкий путь, это воспользоваться добавлением ссылок в соц. сети. Здесь я расскажу о том, как сделать кнопку добавления ссылки на ваш сайт для twitter. "Как это сделать" ...

Читать

Как добавить в пункт админ меню wp кружочек с количеством?

Август 14, 2017 г.

Вот собственно о таком красивом кружочке (bubble) рядом с наименованием пункта идет речь. Админ меню является глобальным массивом в Wordpress. Все изменения ...

Читать

Обновление Alpha Cache до 1.1.005

Февраль 6, 2016 г.

Разобрался как добавлять к своим плагинам иконки и картинки в описаниях на wordpress.org. Замостырил вот такой баннер для Альфа-Кеша. Но обновление, конечно, ...

Читать
 

Комментарии к «Иерархия шаблонов в WordPress»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: