Индивидуальный шаблон страницы WordPress

Индивидуальный шаблон страницы WordPress

5/5 - (1 голос)

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

Шаблон с возможностью выбора в панели администрирования

Поэтому придется создать отдельный файл для шаблона страницы и в нем уже сделать необходимый нам внешний вид и функционал. Для этого делаем копию файла page.php, index.php или 404.php, любой на выбор и называем ее, например, test.php. Открываем созданный файл и в самом начале прописываем:

<?php
/*
Template Name: Тестовый шаблон
*/
?>

Этим мы задали имя нашему шаблону страницы. Для чего это нужно, спросите вы? Дело в том, что теперь в панели администрирования при создании новой страницы у нас появится выпадающий список, в котором можно будет выбрать необходимый нам шаблон, в том числе и наш Тестовый шаблон.

В блоке с атрибутами страницы в выпадающем списке “Шаблон” выберите наш новый шаблон страницы. Слаг (ярлык, короткую ссылку) страницы называем test. Названия и слаг страницы могут быть абсолютно любыми, а не только test. Все, теперь мы передали право управления внешним видом страницы файлу test.php, который можно отредактировать так, как нам нужно и эти изменения не затронут остальные страницы. Теперь можно с уверенностью утверждать, что мы придали новой странице свою индивидуальность, однако это еще не все, вернемся к нашему файлу, его еще нужно отредактировать согласно нашим потребностям. Берем и удаляем вывод основного цикла Loop, если он нам не понадобится. Обычно цикл Loop начинается со строчки:

<?php while (have_posts()) : the_post(); ?>

и заканчивается строчкой:

<?php endwhile; endif; ?>

Вставляем на освободившееся место то, что нам нужно. Например, это может быть обычный контент, набранный в редакторе или какой-то оригинальный контент, который нельзя реализовать в рамках обычной страницы, это может быть какой-нибудь скрипт. В общем, это может быть все что угодно, ну или почти все, что мы в состоянии написать на HTML/PHP. Кстати обратите внимание на то, что если вы собираетесь вставить форму, то имена параметров не должны совпадать с используемыми движком WordPress (p, s и т.д).

Шаблон по идентификатору страницы

Существует еще один способ, с помощью которого можно создать шаблон для страницы. Этот способ менее удобен, однако тоже имеет право на существование. Принцип формирования шаблона заключается в том, что мы создаем копию файла page.php и присваиваем ему идентификатор той страницы, для которой мы хотим применить шаблон. В общем случае имя файла будет выглядеть так: page-id.php, где id-идентификатор страницы. Чтобы узнать идентификатор вашей страницы, зайдите в панель администрирования, выберите страницу, к которой будем применять шаблон и в адресной строке браузера посмотрите ее id. Например, на скриншоте видно, что странице “О блоге” присвоен идентификатор 5.

Таким образом, зная идентификатор, создаем файл page-5.php. Теперь мы можем спокойно редактировать этот файл-шаблон для страницы с id=5 по тому же принципу, что и варианте, указанном выше.

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

Индивидуальный шаблон страницы WordPress: 30 комментариев

  1. Добрый день. А как сделать такую же тему, только с шаблонами записей?
    Копирование файла single ни к чему не привели

  2. Я про то, чтобы сделать разные шаблоны, которые можно было бы выбирать при написании статьи.

    При создании страницы – там появляется выбор и можно выбрать шаблон из созданных.
    А вот при записи такого нет.

    1. Чтобы сделать разные шаблоны для записей, для этого вам нужно создать файл single-id.php в папке вашего шаблона, где id будет идентификатор вашей записи в БД.

  3. Чето мне кажется, по мимо этого надо ещё плагин Use parent category template plus скачать, чтобы работало

    1. Если хотите для категорий разные шаблоны, то создайте файл category-id.php. Либо воспользуйтесь плагином, если вам так удобно.

  4. Установил плагин sidebar-generator.1.1 но он не в какую не хочет работать.
    Помогите разобраться. Сайт на движке wordpress/
    Ваша статья с отдельным шаблоном для страницы очень помогла теперь бы сайтбар настроить. Буду благодарен за любую информацию

    1. Какая у вас версия WordPress? Обратите внимание, что упомянутый вами плагин работает вплоть до версии 2.9.2. Вы также можете самостоятельно прописать нужную вам область в сайдбаре под виджеты в файле functions.php вашего шаблона.

  5. у меня версия 3.1 . если можно по подробней насчёт functions.php. и вообще подскажите что можно использовать для создания сайт бара на отдельной странице.

  6. Подробнее о добавлении боковой колонки я написал в статье https://wordpressadmin.ru/tips/homepage-sidebar/. Прочтите ее, как создавать индивидуальную страницу, вы уже знаете. А теперь примените информацию, полученную из этих двух статей для своего примера.

  7. странно, я раньше такое делал, а теперь ничего не получается, не появляется в меню новый шаблон, может какой плагин мешает?

    1. abr307 Та же фигня была, разобрался. Когда мы скопировали файл для нового шаблона, надо 1. перекодировать его сразу в UTF-8 без BOM (а то русское название шаблона будет квадратиками) и 2. перегрузить тему. 3 – зайти в Редактор тем, новый шаблон должен появиться внизу списка справа. Ну короче, это значит, что все работает.

      Теперь смело можно находить Страницу или Запись, msrfnm на ней – свойства и там есть эти списки шаблонов. Ну короче, что-то типа того …

      Афтар – спасибо !!!

  8. По идее, никакие плагины не должны влиять на индивидуальный шаблон страницы, либо вы допустили какую-нибудь ошибку. Но ради интереса можете попробовать отключить все плагины и попробовать снова.

  9. подскажите пожалуйста как узнать id главной страницы, её ведь нет в списках добавленных, а её надо исключить по Id? что делать
    может подскажете где кроется id главной страницы сайта?

  10. там плагин есть а в настройках надо указать id главной страницы
    там только id можно ввести

  11. Очень странно, но почему-то у меня тоже не появляются шаблоны страниц, хотя на шаблонах у меня работает один сайт. Для каждой страницы там свой шаблон. А вот сейчас на подключается, хотя в шаблоне Twentyeleven работает.

  12. только начал разбираться в вордпрессе и возник вопрос по поводу того где именно искать и как файл page.php в консоле его отображение я вижу и вижу код а сам файл его копирования найти не знаю как? спасибо!

  13. Файл page.php расположен в вашем шаблоне. Чтобы его скопировать на ваш компьютер, нужно подключиться к серверу, на котором расположен ваш сайт по FTP.

  14. Очень нравится ваш сайт, где можно скачать такой же красивый шаблон сайта?

  15. Подскажите такой вопрос. Хочу на своем блоге ezoman_in_ua сделать отдельный дизайн для страницы ezoman_in_ua/osanka
    Хочу чтобы дизайн выглядел так как примерно тут russianmarketing_ru
    Можете вкратце описать как делать.
    Спасибо.

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

  17. С индивидуальными шаблонами страниц более менее всё понятно, а вот как убрать сайдбар при открытии записей и растянуть содержимое страницы на всю ширину?

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

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