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

Зачем это надо?

В моем кулинарном блоге наряду с рецептами публикуются статьи о технике для кухни.

Для разметки страничек постов я использовала один шаблон для всех записей и микроразметку schema.org/Recipe. 

Из-за этого поисковики все время выдавали ошибку.

При проверке микроразметки записей из категории с описаниями техники для кухни они не находили нужных полей recipeingredient и recipeinstructions. А у Гугла еще больше претензий, ему нужны поля cookTime, recipeCategory и прочие.

Пришлось искать решение, чтобы выводить в wordpress отдельные шаблоны single.php для разных постов.

Разные шаблоны для записей wordpress

Способ реализовать в wordpress отдельный шаблон для записей конкретной категории как всегда нашла в сети.

Проще объясню так:

если запись находится в категории 'texnika-dlya-kuxni', используем такой шаблон single-texnika.php (с микроразметкой schema.org/Article);
для записей в других категория берем вот этот шаблон single-default.php (с микроразметкой schema.org/Recipe).

Примеры использования кода (размещаем в файле single.php):

<?php $post = $wp_query->post; 
if (in_category('texnika-dlya-kuxni')) 
{include(TEMPLATEPATH.'/single-texnika.php');}
else {include(TEMPLATEPATH.'/single-default.php');} ?>

Категорий (условий) может быть несколько, как и используемых шаблонов.

<?php   $post = $wp_query->post;  
if (in_category('texnika-dlya-kuxni')) 
{include(TEMPLATEPATH.'/single-texnika.php');}
else if (in_category('prisposobleniya'))
{include(TEMPLATEPATH.'/single-texnika.php');}
else if (in_category('podukty')) 
{include(TEMPLATEPATH.'/single-texnika.php');}
else {include(TEMPLATEPATH.'/single-default.php');}?>

В этом коде используется оператор ELSEIF для последовательной проверки вариантов условий. По написанию применяют как ELSEIF, так и ELSE IF. Выражения равнозначны (при условии использования фигурных скобок), и ведут к одному результату.

WordPress отдельный шаблон для записи, как сделать?

Работать будем с файлами темы Вордпресс. 

СОЗДАЙТЕ КОПИЮ single.php в файловом менеджере на хостинге, переименуйте ее (у меня single-texnika.php). В этот файл внесите необходимые изменения. У меня это изменение микроразметки, но может быть другой дизайн страницы записей, отсутствие/наличие рекламы. 
СОЗДАЙТЕ ВТОРУЮ КОПИЮ single.php в файловом менеджере, назовите ее single-default.php. Ее вордпресс будет использовать по умолчанию для всех записей не из рубрики texnika-dlya-kuxni.
РАЗМЕСТИТЕ в самом файле single.php вышеприведенный код (первый или второй). Файлы, естественно, называйте по своему.  

Последние версии Вордпресс подсвечивают код. В данном случае зеленым подсвечены наименования рубрик и шаблонов. Все правильно. Если ваш код остался черным, ищите ошибку. Она проявляется даже из-за использования неправильных кавычек или скобок.

Как выглядят эти файлы в админпанели в редакторе блога вы видите на самой первой картинке.

Можете работать через FTP клиент FILEZILLA, как это делать, читайте здесь.
Wordpress отдельный шаблон для записи из конкретной рубрики создан. Будем ждать реакции поисковиков.

Метки:

Создать сайт на WordPress

ПОХОЖИЕ СТАТЬИ:

ДРУЗЬЯ, СПАСИБО, ЧТО ПОДЕЛИЛИСЬ СТАТЬЕЙ:

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

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