WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru WPmentor - Ищем топовых специалистов по WordPress, чтобы помочь вам заработать

Шаблоны страницы для типов записей в WP 4.7

Поддержка шаблонов для постоянных страниц - записей типа page была неизменна аж 12 лет. И помогала разработчикам удобно создавать шаблоны для страниц, но была всегда ограничена только типом записи page. Однако с версии WordPress 4.7 положение дел изменилось и теперь можно создавать шаблоны для абсолютно любых типов записей.

Шаблоны страниц (записей типа page)

О том как создавать шаблоны для записей я писал в отдельной статье и там не только этот способ, а еще два. Этот способ идет там первым. Напомню: чтобы создать шаблон постоянной страницы, нужно в корне темы создать файл с любым названием, например, my-template.php и в нем указать php комментарий следующего вида:

<?php
/*
Template Name: Мой шаблон страницы
*/
?>

<!-- html код шаблона -->

После этого на странице редактирования постоянной страницы в разделе «Свойства страницы» появится возможность выбрать этот шаблон.

Метабокс свойства страницы

Файл шаблона можно поместить и во вложенную папку в корне темы, WP его найдет. Например, в корне темы можно создать папку templates и все шаблоны складывать туда.

Шаблоны для записей произвольного типа

С версии WordPress 4.7 функционал шаблонов страниц расширился. И теперь можно создавать шаблоны для страниц любого типа.

Чтобы указать, что создаваемый файл шаблона поддерживается типом записи, название этого типа записи нужно указать в заголовке: Template Post Type:. Несколько типов записей можно указать через запятую.

Для примера давайте создадим шаблон, который будет поддерживать три типа записи: post, page, product. Для этого в начале файла добавим такой php комментарий:

<?php
/*
Template Name: Мой шаблон страницы
Template Post Type: post, page, product
*/

// … остальной код шаблона

Теперь на страницах редактирования записей типов: post, page, product, можно будет выбрать шаблон «Мой шаблон страницы».

Шаблон страницы для типа записи post
Шаблон страницы для типа записи post

Заметки разработчикам

  • Если хоть один шаблон существует для типа записи, то метабокс «Свойства страницы» (Post Attributes) появится автоматически на странице редактирования записи. Не обязательно включать поддержку 'page-attributes' при регистрации типа записи.

  • Заголовок «Свойства страницы» можно изменить при регистрации типа записи в параметре label > attributes.
19 комментов
Полезные 4 Вопросы 1 Все
  • Александр

    Большое Вам спасибо. Очень нужная тема. Долго искал.

    2
    Ответить26.Июн.2019 в 14:15 #
  • Bahus-4 dendrblog.ru/must-have-dlya-blogera/gde-...

    Добавляю в код

    /*
    Template Name: Мой шаблон страницы
    Template Post Type: post, page, product
    */

    Но шаблон не появляется в меню выбора шаблона записи.

    Я создал категорию. И мне нужно, чтобы для этой категории применялся индивидуальный шаблон записей с увеличенным размером шрифта. Как это сделать, если в файле стилей указан размер шрифта для всего сайта и прописывается body в файле headers?

    Ответить31.Мар.2020 в 18:10 #