В некоторых случаях возникает необходимость настроить уникальный стиль для отдельных записей, страниц или категорий. Например, можно изменить представление определенной записи, страницы или рубрики. Это часто необходимо для коммерческих или рекламных сайтов, где требуется выделить страницу с конкретным продуктом или услугой.
Для создания отдельного шаблона в WordPress вам необходимо выполнить следующие шаги:
- Создание файла шаблона: В каталоге вашей темы создайте новый файл PHP. Назовите его, например,
single-custom.phpдля индивидуальных записей,page-custom.phpдля страниц илиcategory-custom.phpдля рубрик. - Добавление заголовка шаблона: В начале нового файла добавьте комментарий, определяющий название шаблона. Например, для страницы это может выглядеть так:
- Копирование кода: Скопируйте содержимое одного из существующих шаблонов (например,
single.phpилиpage.php) и вставьте его в новый файл. Это позволит вам использовать основные элементы разметки и стилей вашей темы. - Редактирование шаблона: Внесите необходимые изменения в разметку и стили в зависимости от того, какую информацию и как вы хотите отобразить на странице.
- Применение шаблона: Для записей выберите ваш новый шаблон в редакторе записей в разделе «Атрибуты записи». Для страниц — в редакторе страниц в разделе «Атрибуты страницы». Если это рубрики, вы можете использовать функцию
category_templateв большинстве случаев.
<?php /* Template Name: Мой Уникальный Шаблон */ ?>
Не забывайте сохранять все изменения и проверять, как выглядит ваш новый шаблон на сайте. Используйте инструменты разработчика в браузере, чтобы настроить стили в соответствии с вашими потребностями. Вы также можете добавить дополнительные функции, такие как специальные поля, мета-боксы или пользовательские запросы, чтобы завершить оформление.
Таким образом, настройка уникальных шаблонов позволяет вам создать индивидуальный вид и функцию для различных частей вашего сайта, что может существенно повысить его эффективность и эстетику.
Система шаблонов WordPress
Платформа WordPress предлагает достаточно гибкую систему шаблонов. В одной и той же теме можно использовать разные оформления для различных частей сайта. Прежде чем отобразить ту или иную секцию, система последовательно проверяет шаблоны, пока не найдет подходящий.
Рассмотрим процесс создания индивидуальных шаблонов для Категорий, Записей и Страниц.
Индивидуальный шаблон для рубрики
Для отображения страниц категорий WordPress применяет следующую иерархию:
category-.php -> category-.php -> category.php -> archive.php -> index.php
Это означает, что система сначала пытается использовать шаблон для конкретной категории, опираясь на ее идентификатор (слаг). Например, для рубрики Мониторы с слагом monitors необходимо создать файл category-monitors.php. Если такого файла нет, то система ищет шаблон с уникальным идентификатором категории, например, 55, и проверяет файл category-55.php. Если и этот файл отсутствует, будет использован общий шаблон для категорий – category.php. При его отсутствии подключается общий архивный шаблон (archive.php). Если ни один из указанных шаблонов не найден, система использует главный файл – index.php.
Не забудьте также изучить процесс создания пользовательских типов записей с помощью функции register post type.
Как создать шаблон для категории?
Первым делом нужно выяснить слаг категории, для которой требуется разработать уникальный шаблон. Для этого в админ-панели перейдите по пути Записи -> Рубрики.

На странице с рубриками вы увидите, что рядом с названием каждой категории указан ее ярлык, который и потребуется. Будем на примере категорий Мониторы со слагом monitors.
Чтобы создать уникальный шаблон, вам необходимо перейти в папку вашей активной темы (wp-content/themes/НАЗВАНИЕ_ТЕМЫ) и создать там файл с названием category-monitors.php, где нужно прописать вывод для страницы категории Мониторы.

Также, как уже упоминалось, шаблон для категории можно создать по ее уникальному идентификатору (ID). Чтобы его получить, перейдите в раздел Рубрики и нажмите на ссылку Изменить под названием категории.

Откроется страница редактирования категории. Обратите внимание на адресную строку вашего браузера, где вы найдете строчку:
/wp-admin/term.php?taxonomy=category&tag_ID=3
Значение tag_ID=3 указывает, что наша категория Мониторы имеет идентификатор 3. Теперь нужно вернуться в каталог с темой и создать файл с названием:
category-3.php

Стоит заметить, что оба способа будут работать и с дочерними темами.
Как создать шаблон для страницы?
Для обработки страниц WordPress следует такой последовательности:
page-.php -> page-.php -> page.php -> index.php
Можно наблюдать, что процесс с страницами аналогичен тому, который используется для рубрик. Едиственным отличием является шаблон page.php, который служит общим для страниц. Процесс создания уникального шаблона также схож (по слагу или ID страницы). Чтобы получить идентификатор страницы, вам нужно перейти на ее редактирование и взглянуть на адресную строку, в которой будет указано следующее:
/wp-admin/post.php?post=167
Значение 167 параметра post – это уникальный идентификатор страницы.
Как создать шаблон для записи?
При выводе контента отдельной записи WordPress использует следующую иерархию шаблонов:
single-.php -> single-.php -> single.php -> index.php
Процесс создания индивидуальных шаблонов для записей аналогичен тому, что используется для страниц. Идентифицировать их можно как по слагу, так и по ID.
Кроме того, шаблоны можно создавать и для всех записей из определенной категории. Например, вы можете захотеть отображать изображения во всех записях из категории Пылесосы, а в категории Телевизоры добавить еще и видеообзоры.
Рассмотрим пример создания шаблона для всех записей из категории Мониторы. Для этого вам потребуется выполнить несколько простых шагов:
- Создайте в каталоге темы файл single-monitors.php.
- Скопируйте файл single.php и назовите его, например, single-default.php.
- Откройте файл single.php, удалите его содержимое и вставьте следующий код:
post; if ( in_category( '3' ) ) < //ID категории include( TEMPLATEPATH.'/single-monitors.php' ); >else < include( TEMPLATEPATH.'/single-default.php' ); >?>
Либо вместо уникального идентификатора категории можно использовать ее слаг:
post; if ( in_category( 'monitors' ) ) < //слаг категории include( TEMPLATEPATH.'/single-monitors.php' ); >else < include( TEMPLATEPATH.'/single-default.php' ); >?>
Этот код что делает? Мы четко указываем системе, что если у выбранной категории ID равен 3 или слаг – “monitors”, то следует подключить шаблон single-monitors.php. Во всех остальных случаях будет применяться файл single-default.php.
Многим предпочтительнее вид отображения рубрик с карточками с бесконечной загрузкой вместо стандартной пагинации. Такой подход может быть реализован, используя ajax-кнопку “Загрузить еще” через соответствующий плагин.
Также стоит отметить, что для более сложных проектов можно использовать функции get_template_part() и locate_template(), которые позволяют разбивать код на более мелкие части, что делает его более управляемым и организованным. Это особенно полезно для больших шаблонов, где необходимо поддерживать чистоту и структуру кода. Использование этих функций также упрощает повторное использование кода между различными частями темы.