Подписаться на Русские Темы Wordpress | Бесплатные Шаблоны ВордпрессRSS


Использование разных шаблонов отображения контента в одной теме WordPress

Задача: Необходимо использовать разные шаблоны страниц и категорий для отображения информации в блоге. Т.е. если у вас есть блог и вы хотели бы добавлять видео/аудио/картинки, но так, чтобы эти странички кардинально отличались от существующего блога (разметка, дизайн и т.д.). Такая же система использована на Themebot.ru

Решение:
Создаем файлы отвечающие за вывод рубрик: category-blog.php и category-video.php и копируем в них содержимое существующего файла category.php.
Создаем файлы отвечающие за вывод записей: single-blog.php и single-video.php и копируем в них содержимое существующего файла single.php.
В файл category.php вставляем следующий код:

<?php
$id-video = array(1,2,55);   # Пишем ID категорий, относящихся к видео
if ( have_posts() ) { the_post(); rewind_posts(); }
if ( in_category($id-video)) { include(TEMPLATEPATH . '/category-video.php');
} else {
include(TEMPLATEPATH . '/category-blog.php');
}
?>

Таким образом если мы переходим в категорию с ID=1,2 или 55, то загрузится шаблон category-video.php. Если же это будет другой ID, то загрузится шаблон category-blog.php.
Шаблоны category-video.php и category-blog.php можно отредактировать по своему вкусу.
Также мы поступаем и с single.php. Для начала внутрь вставляем код:

<?php
$id-video = array(1,2,55);   # Пишем ID категорий, относящихся к видео
if ( have_posts() ) { the_post(); rewind_posts(); }
if ( in_category($id-video)) { include(TEMPLATEPATH . '/single-video.php');
} else {
include(TEMPLATEPATH . '/single-blog.php');
}
?>

Код абсолютно идентичен первому варианту, меняются только названия. Теперь при обращении к записи, находящейся в категории с ID=1,2 или 55 загрузится шаблон single-video.php. Если же запись из категории с другим ID будет отображаться при помощи single-blog.php.
Вот и все, получается нечто вроде:

Дата публикации : 26 апреля, 2010

Интересные обзоры интернет сервисов проектов и стартапов.

2 ответов на "Использование разных шаблонов отображения контента в одной теме WordPress"

  1. Ольга на Чт, 28 Апр 2011 12:38

    Замечательно. А можно использовать разные header-blog.php и header-video.php для разных категорий ? Очень хочется разные шапки для отдельных категорий и некоторые категории со всеми их постами спрятать в Noindex.

  2. admin на Вс, 1 мая 2011 11:23

    Ольга, хороший вопрос, я использовал специальный код в header который определял где мы и соответственно выводил title разного формата. Отдельно шапки делать не пробовал, но можно по этому же принципу

Выскажи свое мнение по wordpress теме Использование разных шаблонов отображения контента в одной теме WordPress
и, если хотите картинку рядом с комментарием возьмите на граватар.com!