Есть у меня один сайт, который с недавнего времени я решил перенести на WordPress. В процессе переноса столкнулся с такой задачей: в новом макете у меня было три способа вывода данных. Первый для новостей, второй для статей, а третий для фотографий. Понятно, что в одном файле это сделать сложно, поэтому нашел простое решение этой задачи.
Все сводится к тому, что для каждого типа вывода мы создаем отдельный файл на базе файла category.php. Чтобы было понятно, у нас этот файл находится с папке с нашей темой. Этот файл отвечает за вывод данных по категориям. И вот тут мы это можем использовать. В моем случае три разных шаблона для вывода, значит, нам надо три файла с соответствующим шаблоном.
Как сделать, чтобы при выводе определенной категории подключался нужный шаблон. Файл category.php оставим для вывода всех прочих категорий. В моем случае «все прочие», это новости, поэтому я его сверстал под вывод новостей. Далее есть категория Статьи. Чтобы подключить к ней наш шаблон, надо узнать ее ID. Узнать это мы можем в разделе редактирования этой категории (рубрики):
В примере мы видим ID категории — 7. Чтобы к этой категории применить наш шаблон, надо создать файл и обозвать его category-7.php, где 7 — ID категории. Таким образом мы можем создавать огромное количество разных шаблонов вывода данных и подключать их к любой категории.
UPD.
Вышеописанный способ хорош, но есть у него одна проблема, а именно: в названии файла category вы задаете строго ID нужной категории, но по разным причинам, ID категории может быть изменен. Например, на локальном сервере у вас ID категории для вывода Видео будет равен 4, а когда перенесете на хостинг — 2.
Чтобы избежать редактирования имени файла на хостинге, вам нужно сделать чуть иначе. При создании Рубрики, вы заполняете несколько полей: Название и Ярлык. С Названием все понятно, а вот поле Ярлык — это ссылка ЧПУ, т.е. тут для категории Видео надо писать video.
Теперь нам надо сделать следующее: файл для вывода категории видео надо обозвать вот так — category-video.php. И теперь уже не важно какой ID будет у категории. Теперь в этом шаблоне будет выводиться категория (рубрика) с ярлыком video.
Это очень удобно, ведь мы теперь не привязаны к ID. И при переносе сайта с локального сервера на хостинг, нам достаточно будет создать категорию (рубрику) Видео и указать ей ярлык video и все.
Читайте также: Как сделать несколько шаблонов для записей в WordPress