adsPlace_1

Войти или Зарегистрироваться

adsPlace_3

Иерархия выполнения файлов темы в WordPress

Иерархия выполнения файлов темы в WordPress

В данной статье описана иерархия файлов в теме WordPress. Мы разберемся, какие файлы используются, когда загружается страница. Может быть, вы уже знаете, что конкретные записи обслуживаются файлом  single.php, а страница — page.php. Но WordPress ищет различные файлы в зависимости от имеющихся факторов, и очень полезно иметь представление об общей картине.

Первое, что нужно уяснить: без файлов index.php и style.css ваше тема не является правильной темой для WordPress. Если все, что у вас есть — данные два файла, то WordPress будет пытаться загрузить и обработать все ситуации с помощью index.php. На представленной подсказке данное правило отражено:

Иерархия выполнения файлов темы в WordPress

Обратите внимание но то, что каждая строка типа страницы заканчивается на index.php. Именно поэтому файл index.php необходим для темы WordPress. Если любой другой файл отсутствует в теме (например, в тему не включен файл search.php), будет использоваться index.php вместо него.

Теперь посмотрим на порядок выполнения. Опишем направление, в котором WordPress выполняет поиск файлов в папке активной темы. Данная информация очень полезная при создании темы WordPress.

Будем брать каждый тип страницы и описывать иерархию выполнения.

Главная страница

Данная страница является первой и самой важной страницей любого веб сайта. WordPress имеет средства для настройки страницы. Вот что представляет собой иерархия главной страницы.

  1. frontpage.php
  2. home.php
  3. index.php

При выводе главной страницы WordPress ищет файл frontpage.php. Если его нет, будет использоваться файл home.php. Если и home.php отсутствует в папке, то используется index.php.

Запись

  1. single-[тип_записи].php
  2. single.php
  3. index.php

WordPress может иметь столько типов записей, сколько нужно. И очень просто сделать разные дизайны для каждого типа записей. Например, если у вас есть тип записи produc, то можно использовать для него файл single-product.php.

Страница

  1. [пользовательский_шаблон].php
  2. page-[сокрашение].php
  3. page-[id].php
  4. page.php
  5. index.php

Также как и для записей, для страниц можно использовать различные шаблоны.

Категории

  1. category-[сокращение].php
  2. category-[id].php
  3. category.php
  4. archive.php
  5. index.php

Из выше приведенного списка обработки можно понять, как использовать различные шаблоны для разных категорий. Например, можно построить шаблон с использованием в имени сокращения или идентификатора определенной темы, а  для остальных использовать category.php по умолчанию.

Метка

  1. tag-[сокрашение].php
  2. tag-[id].php
  3. tag.php
  4. archive.php
  5. index.php

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

Таксономия

  1. taxonomy-[tax]-[термин].php
  2. taxonomy-[tax].php
  3. taxonomy.php
  4. archive.php
  5. index.php

Иерархия файлов для таксономии.

Страница автора

  1. author-[псевдоним_автора].php
  2. author-[id_автора].php
  3. author.php
  4. archive.php
  5. index.php

Для разных пользователей можно построить разные дизайны.

Приложения

  1. [тип_приложения].php
  2. attachment.php
  3. single.php
  4. index.php

Данная иерархия файлов позволяет использовать для разных приложений разные страницы на сайте.

Страница даты

  1. date.php
  2. archive.php
  3. index.php

Для шаблона даты можно использовать файл date.php.

Архив

  1. archive.php
  2. index.php

Поиск

  1. search.php
  2. index.php

Страница 404

  1. 404.php
  2. index.php

Заключение

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

Последние из рубрики

Комментарии(0)

  • Комментариев еще нет. Будь первым!

    Оставь свой отзыв

    Для вставки кода используйте кнопки php, html, javascript, css, sql

    * - поля обязательны к заполнению