DIW#6. Шаблон WordPress — анатомия
Опубликовано: 23.08.2018
Настало время разобраться, как работает шаблон WordPress, из каких файлов он состоит и для каких целей нужен каждый файл. Если вы раньше не сталкивались с разработкой шаблонов WordPress, но имеете некоторый опыт веб-разработки — вы удивитесь, насколько легко и понятно они устроены. Если же у вас совсем нет опыта — не беда, в этом нет ничего сложного. Убедитесь сами…
Шаблон WordPress — анатомия
Конечно, все шаблоны выглядят по разному. Если вы скачаете пять-шесть шаблонов и посмотрите, из каких файлов они состоят — состав будет немного отличаться. Какая-то будет содержать страницу архивов, для специального вывода записей, у другой не будет шаблона, отвечающего за поиск. Однако, большинство шаблонов все таки очень похожи по составу. Давайте посмотрим, для чего предназначен каждый файл в составе шаблона:
По клику в новом окне откроется большая картинка
Теперь дам некоторые пояснения насчет этой схемы.
Файлы index.php и style.css абсолютно необходимы для функционирования любого шаблона. При отсутствии любого из этих файлов — WordPress просто не увидит этого шаблона. Технически, можно создать шаблон, который будет содержать только эти два файла. Однако, наверняка вам захочется иметь некоторый дополнительный функционал.
Подавляющее большинство тем будет содержать, в том или ином виде, файлы, отмеченные как Ядро и Стандарт. Эти файлы охватывают всю функциональность, которую посетители ждут от любого блога.
Файлы, отмеченные как специальные — вносят дополнительные шаблоны отображения в ваш блог. Например, файл image.php отвечает за отображение картинок и других медиа-объектов. Вы можете использовать его для какого-то особенного вывода картинок. К примеру, можно вставить вывод предупреждения об авторских правах или что-то вроде того.
Файл, отмеченный как Хлам — устаревший и давно не используется. Однако, в некоторых шаблонах он все встречается, поэтому я отразил это в схеме.
Взаимодействие файлов шаблона
Все файлы шаблона не являются автономными. Они взаимодействуют и вызывают друг друга, чтобы вместе делать общее дело.
Например, при вызове главной страницы, движок запрашивает только index.php , в котором прописан(по идее ;)) вызов header.php в начале, sidebar.php в середине и footer.php в конце.
Затем sidebar.php может вызывать, в свою очередь, searchform.php для формы поиска и так далее. Кроме того, файл header.php, который включает в себя раздел head , будет вызывать файл style.css .
Именно такая, модульная и динамичная конструкция, дает разработчику шаблона WordPress очень широкие возможности. Ниже я дам схему иерархии файлов шаблона и рассмотрим ее подробнее:
Давайте посмотрим, какие типы вывода используются в WordPress: Главная — это обычно корневой URL вашего домена, например, site.com Запись — это обычная запись блога Страница — «статическая» страница, находящаяся за пределами основного потока сообщений. Например, страница контактов или карта сайта Пользовательские страницы — страницы, для которых настроен специальный вывод записей. Например, галерея или страница отзывов Результаты поиска — отображает список записей, найденных механизмом поиска по сайту Архив — вывод записей по тегу, категории, дате, автору и прочим подобным признакамЧем отличается вывод страниц и записей?
По сути, эти два типа записей очень похожи. Однако, между ними есть большое отличие, как между категориями и тегами . Страницы отвечают за вывод «статических» страниц, а записи — это основной формат WordPress. Все же это блоговый движок. Вывод этих типов тоже отличается.
Записи обычно выводят с формами комментирования, страницы без них. В записях выводят информацию о дате публикации, авторе и прочие мета-сообщения. Страницы же лишены этого, да это и не нужно. Они несут статическую информацию и являются аналогом статических страниц классического HTML.
Давайте теперь ответим на самый главный вопрос: как же WordPress знает, какой шаблон использовать?
Можно предположить, что это жестко прописано на уровне системных файлов WordPress, но ведь большинство файлов в теме необязательны! Если ваш шаблон не имеет файла archive.php , WordPress показывает пустую страницу? Нет, вывод движется вниз по иерархии файлов шаблона , чтобы найти следующий, наиболее подходящий файл для отображения.
В конце концов, все дороги приводят к файлу index.php . Неудивительно, что это такой важный и нужный файл! Аналогично этому пути, мы можем двигаться в других направлениях и создать файлы, которые очень специфичны.
Например, если мы хотим иметь уникальный шаблон при просмотре категории №456 нашего блога, мы создаем файл с названием category-456.php и WordPress автоматически его использует для ее отображения. Давайте посмотрим, как выглядит иерархия файлов шаблона
Думаю, из этой схемы все понятно? Если нет — спрашивайте в комментариях, объясню подробнее.
На этом сегодня все. В следующем разделе рассмотрим структуру файла header.php и начнем двигаться по пути создания своего шаблона. Также, планирую большую статью по созданию кастомных страниц с контактными формами, выводом карты сайта, оформлением страниц архива и другими «плюшками».
Удачного вам дня
Сегодня | Завтра | ||
USD | 32.62 | 32.50 | |
EUR | 39.90 | 39.92 |
Обменник | Переходов |
Wmchanger | 6 |
E-Market | 5 |
WMtoCash.com | 4 |
Str-Money | 3 |
Hot-Change | 3 |
Вы можете получить WMR-бонус в размере 0,01-0,10 WMR на свой кошелек 1 раз в сутки | |
Кошелек
|
|
Код
|
|
Обмен Webmoney |