Иерархия шаблонов
Иерархия шаблонов WordPress отвечает на следующий вопрос
Какой файл шаблона будет использовать WordPress
при отображении страницы определенного типа?
как WordPress определяет, какие файлы шаблонов использовать на отдельных страницах?
WordPress использует строку запроса , чтобы решить, какой шаблон
или набор шаблонов следует использовать для отображения страницы.
Строка запроса — это информация, которая содержится в ссылке
с укзанием конкретной части вашего веб-сайта.
Проще говоря, WordPress выполняет поиск по иерархии шаблонов, пока не найдет соответствующий файл шаблона. Чтобы определить, какой файл шаблона использовать, WordPress:
Сопоставляет каждую строку запроса с типом запроса, чтобы решить, какая страница запрашивается (например, страница поиска, страница категории и т. д.);
Выбирает шаблон в порядке, определяемом иерархией шаблонов;
Ищет файлы шаблонов с определенными именами в каталоге текущей темы и использует первый соответствующий файл шаблона, как указано в иерархии.
За исключением основного index.phpфайла шаблона, вы можете выбрать, хотите ли вы реализовать конкретный файл шаблона или нет.
WordPress автоматически распознает файлы шаблонов с определенными
стандартными именами и использует их для определенных типов веб-страниц.
Например, когда пользователь нажимает на заголовок сообщения в блоге,
WordPress знает, что он хочет просмотреть только эту статью на своей
собственной веб-странице. Иерархия шаблонов WordPress будет использовать
файл шаблона single.php , а не index.php для создания страницы — если
в вашей теме есть файл single.php . Точно так же, если пользователь
щелкнет ссылку для определенной категории, WordPress будет использовать
шаблон category.php , если он существует; если это не так,
он ищет archive.php , и если этот шаблон также отсутствует,
WordPress будет использовать основной index.php шаблон.
На следующей диаграмме показано, какие файлы шаблонов вызываются для создания страницы WordPress на основе иерархии шаблонов WordPress.
подробнее на https://developer.wordpress.org/themes/basics/template-hierarchy/
Определение пользовательских типов шаблонов
Для добавления своих собственных типов шаблонов, которые используются в определённых вами случаях, можно использовать систему плагинов WordPress. Это необходимо, если вы хотите сделать, например, различную вёрстку для различных случаев или свой шаблон комментариев и т.д. Это расширение возможностей WordPress можно достичь при помощи перехвата события template_redirect.
На примере файла шаблона одиночного поста, используемого для рендеринга одного поста. WordPress использует следующий путь:
single-{post-type}-{slug}.php – (Начиная с версии 4.4) Сначала WordPress ищет шаблон для конкретной записи. Например, если тип записи product и слаг записи — dmc-12, WordPress будет искать single-product-dmc-12.php.
single-{post-type}.php— Если тип записи — product, WordPress будет искать single-product.php.
single.php— Затем WordPress возвращается к single.php.
singular.php- Затем он возвращается к singular.php.
index.php— Наконец, как упоминалось выше, WordPress в конечном итоге возвращается к index.php.