Шаблоны страницы для типов записей в 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 Attributes) появится автоматически на странице редактирования записи. Не обязательно включать поддержку 'page-attributes' при регистрации типа записи.
- Заголовок «Свойства страницы» можно изменить при регистрации типа записи в параметре label > attributes.