Как в WordPress создать шаблоны для записей, страниц и рубрик

В данной статье расмотрим самые популярные задачи на WordPress по создание шаблонов:

Создаем шаблон для страницы

По умолчанию к любой созданной в консоли WordPress странице применяется шаблон page.php, находится данный файл в папке с установленной темой:
корень_сайта/wp-content/themes/название_выбранной_темы/

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

Внутри файла пишем:

<?php
    /*
        Template Name: Мое название шаблона для страницы
    */
?>

Здесь так же можете прописать название на Ваше усмотрение:

Теперь в консоли, при выборе любой страницы, в Атрибутах страницы в поле «Шаблон» можно выбрать из выпадающего списка созданный шаблон:

Выбор шаблона для страницы в WordPress

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

корень_сайта/wp-content/themes/название_выбранной_темы/functions.php

Создаем шаблон для определенной записи

В папке с Вашей темой:
корень_сайта/wp-content/themes/название_выбранной_темы/

Создаем файл с названием, к примеру «myposttemplate.php»

Внутри файла пишем:

<?php /*
 * Template Name: Название шаблона записи
 * Template Post Type: post
 */
?>

Теперь заходим в консоль WordPress, выбираем определенную запись(не страницу, а запись, это разные элементы. К тому же записи хранятся в рубриках)
Далее в правом столбце находим «Свойства записи», выбираем ранее созданный шаблон и сохраняемся.

Скриншот выбора шаблона для записи в WordPress

Пояснение: «Базовый шаблон» это шаблон, который устанавливается сразу с WordPress, его физический файл single.php и он по умолчанию применяется ко всем записям.

Создаем шаблон для определенной категории

Это делается очень просто, в папке с вашей темой:
корень_сайта/wp-content/themes/название_выбранной_темы/

Создаем файл category-1.php , где «1» меняем на id вашей категории, как узнать id смотрим в этой же статьи ранее.
В сам файл можете скопировать содержимое файла archive.php (который находится в папке с темой) и у Вас получится список постов данной категории с уникальным оформлением.

Создаем и применяем шаблон для всех записей определенной рубрики(категории)

Идем в functions.php
Данный файл находится по следующему пути:
корень_сайта/wp-content/themes/название_выбранного_шаблона/functions.php
и добавляем в конец следующий код:

add_filter( 'single_template', function ( $single_template ) {

    $parent     = '1'; //Здесь вставляем id категории(рубрики) для которой хотите изменить шаблон у детальной страницы записи
    $categories = get_categories( 'child_of=' . $parent );
    $cat_names  = wp_list_pluck( $categories, 'name' );

    if ( has_category( 'movies' ) || has_category( $cat_names ) ) {
        $single_template = dirname( __FILE__ ) . '/single-template.php'; // название файла шаблона
    }
    return $single_template;
}, PHP_INT_MAX, 2 );

Обязательно меняем id рубрики

Создаем в папке(корень_сайта/wp-content/themes/название_выбранной_темы/) с темой файл «single-template.php», копируем в него содержимое файла single.php, данный файл находится в этой же папке

Не знаете как получить id рубрики(категории)?
В консоли wordpress заходим в раздел «Записи» -> «Рубрики» -> находим и выбираем необходимую рубрику, в адресной строке смотрим:

category id in WordPress

Данное значение подставляем вместо «1».

Теперь все записи в рубрике с id 1 имеют шаблон «single-template.php»

Если у Вас что-либо не получается — можете задать вопрос в комментариях.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 5,00 из 5)
Загрузка...

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

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