Шаблон страницы в WordPress

Внешний вид и содержимое отдельной Постоянной страницы WordPress обычно задается в файле page.php используемой активной темы блога (Theme). Это файл шаблона страницы, используемый по умолчанию.
*** Здесь речь идет о Постоянных страницах в WordPress - Page (в отличие от записей - страниц блога Post, вид которых задается в файле single.php) .

Разные шаблоны для разных Постоянных страниц

Если нужно сделать так, чтобы в блоге были Постоянные страницы разной структуры, нужно создать разные шаблоны и поместить их в папку активной темы. В админке во время создания страницы для нее можно будет выбрать в разделе Атрибуты один из доступных шаблонов в раскрывающемся меню Шаблон (Page Template).
Обычно во всех темах есть шаблон Постоянной страницы

  1. page.php - используемый по умолчанию шаблон страницы, который показывает содержимое "постоянной страницы" (Page)
А также могут быть файлы 

archives.php - шаблон для показа архивов (Archives) по месяцам (Month ) и по разделам (категориям, Category)
links.php - шаблон для показа ссылок, добавленных в админке в раздел Ссылки (Links), с помощью функции wp_list_bookmarks()

WordPress ищет шаблон для показа Постоянной страницы в активной теме по списку:

  • Пользовательский шаблон, который выбран в раскрывающемся меню Шаблон (Page Template)
  • page.php
  • index.php

и применяет первый найденный шаблон.

*** Если в этом раскрывающемся меню не появляется имя шаблона страницы, добавленного вами в папку активной темы, попробуйте деактивировать и снова активировать активную тему блога.

Создание пользовательского шаблона страницы

Для того чтобы php-файл (page1.php, page2.php, ...), который находится в папке темы, стал шаблоном страницы WordPress, в начале этого файла нужно указать имя шаблона (Template Name). Например, в файле exercises_page.php:
<?php
/*
Template Name: Exercises_page // имя шаблона страницы с упражнениями
*/
?>

Если дизайн нового шаблона будет не сильно отличаться от дизайна основного шаблона страниц блога (page.php), т.е. будет включать шапку (header) и подвал (footer), проще взять для него код основного шаблона и изменить так, как нужно. Например, можно убрать боковое меню (sidebar) или сделать его другим, добавить функции WordPress, которые реализуют карту сайта (см. Простая карта сайта для WordPress) , форму обратной связи (страница "Контакты"), облако меток (функция wp_tag_cloud) или что-то еще (см. описание некоторых функций или полный список тегов шаблонов).

Дополнительно: в разделе "Тема WordPress и ее составляющие" также:

Шаблон страницы в WordPress: 7 комментариев

  1. Сергей

    Подскажите, пожалуйста - у меня в админке сайта при создании новой страницы нет пункта выбора шаблона для страницы. Где это подключается?
    Спасибо.

    1. Admin Автор записи

      Шаблоны для Постоянных страниц (Page, но не записей Post), если они есть в папке активной темы WordPress-сайта, должны быть доступны по умолчанию в раскрывающемся списке справа. Возможно, в активной теме просто нет дополнительных шаблонов?

  2. Эрик

    Добрый день. подскажите пожалуйста как сделать для каждого поста возможность выбора своего шаблона записи. Очень надо =)

  3. Наьалья

    Здравствуйте! Подскажите пожалуйста, как называются файлы page.php и simple в теме Genbu, не отображаются комментарии никак не могу исправить(((

  4. Алексей

    Здравствуйте! Сейчас пишу сайтик для себя. решил поставить его на вордпресс. Но хотелось бы узнать, правильно ли я думаю и правильно ли я понял Вас, уважаемый автор.
    Сначала объясню. В меню я имею 4 ссылки, то есть, это будут 4 странички, где будет расположены все записи, входящие в категорию этой странички. Например, в навигационном меню есть ссылка "Новости" - там буду отображать все новости, есть - "Обзоры" - там буду отображать все обзоры, и т.д. Но я хочу для страницы "Новостей", страницы "Обзоров" и прочих сделать разный дизайн. Мне следует создать дефолтный page.php для странички "Новостей", а потом создать page_reviews.php для "Обзоров", page_gallery.php для "Галереи" и т.д.? И да, конечно же внутри каждого из них прописать:

    Отпишите пожалуйста, не хочу потратить время зря. Заранее спасибо :)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *