Разные шаблоны для категорий и страниц записей

Шаблон для категории

Все мы знаем, что для отображения категорий могут использоваться шаблоны: «category.php», «archive.php», «index.php». Но так как «category.php» не часто встречается в темах WP, то используются обычно два остальных файла.

Для начала заходим в админку WP в раздел с категориями (Записи > Рубрики) и узнаем ID требуемой категории (жмем «Редактировать» возле категории, открывается страница, адрес которой в браузере выглядит приблизительно так: http://www.АДРЕС_ВАШЕГО_САЙТА/wp-admin/categories.php?action=edit&cat_ID=32). Цифры в конце ссылки и есть ID категории. Для примера возьмем вымышленную категорию с ID=32.

Теперь создаем файл и называем его «category-32.php». Не трудно догадаться, что 32 — это ID требуемой категории. В Вашем случае ID явно будет другим.

Также мною лично было проверено, что вместо ID можно использовать название ссылки категории. К примеру, категория с ID=32 называется «Портфолио» и её ссылка (которая указывалась при создании) имеет название «portfolio». Тогда название файла шаблона будет таким: «category-portfolio.php». По крайней мере, у меня все сработало 🙂

Всё! Осталось только отверстать свежеиспеченный файл под ваш вкус и категория, которую Вы указали, будет выглядеть не так, как все.

Шаблон для страницы записи

Для страницы записи собственный шаблон задается немножко по другому. Для этого вам нужно:

Создать файл шаблона и назвать его «single-portfolio.php»;
Сделать копию файла «single.php» и назвать её, к примеру, «single-default.php».
Открыть файл «single.php», удалить все содержимое и вставить следующий код:

  if (in_category('32')) {
      include(TEMPLATEPATH.'/single-portfolio.php');
  } else {
      include(TEMPLATEPATH.'/single-default.php');
  }
?>

или вместо ID категории можете вставить название ссылки категории:

  if (in_category('portfolio')) {
      include(TEMPLATEPATH.'/single-portfolio.php');
  } else {
      include(TEMPLATEPATH.'/single-default.php');
  }
?>

Как видите, мы указываем WP: если категория с ID=32 (или с названием «portfolio» — см. 2 вариант кода), тогда следует использовать шаблон для страниц записей «single-portfolio.php», но если категория имеет другой ID, тогда следует использовать шаблон «single-default.php».

И на этом также всё, Вам осталось только отверстать файл «single-portfolio.php» и все записи в указанной категории будут иметь свой вид.

Конечно же, можете называть файлы как хотите, кроме «single.php».



One Comment

  1. Roman пишет:

    Привет. Реализовал на одном из своих сайтов ваш вариант замены шаблона для определенных записей категорий. Все получилось. Спасибо за материал.

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