Deprecated: Function add_option was called with an argument that is deprecated since version 2.3.0 with no alternative available. in /home/o/optimatour/sonika.ru/public_html/blog/wp-includes/functions.php on line 6121 Notice: Функция register_sidebar вызвана неправильно. В массиве аргументов для боковой колонки «Левая колонка» не задан параметр id. Присвоенное по умолчанию значение равно «sidebar-1». Чтобы убрать это сообщение и сохранить текущее содержимое боковой колонки, задайте вручную параметр id, равный «sidebar-1». Дополнительную информацию можно найти на странице «Отладка в WordPress». (Это сообщение было добавлено в версии 4.2.0.) in /home/o/optimatour/sonika.ru/public_html/blog/wp-includes/functions.php on line 6121 Notice: Функция register_sidebar вызвана неправильно. В массиве аргументов для боковой колонки «Правая колонка» не задан параметр id. Присвоенное по умолчанию значение равно «sidebar-2». Чтобы убрать это сообщение и сохранить текущее содержимое боковой колонки, задайте вручную параметр id, равный «sidebar-2». Дополнительную информацию можно найти на странице «Отладка в WordPress». (Это сообщение было добавлено в версии 4.2.0.) in /home/o/optimatour/sonika.ru/public_html/blog/wp-includes/functions.php on line 6121 Sonika’s blog. В основном про WordPress » Как вывести свое описание для категории в WordPress

Как вывести свое описание для категории в WordPress

[ ←Вернуться к стандартному виду ]

Печатная версия

Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/o/optimatour/sonika.ru/public_html/blog/wp-content/plugins/psevdo-code.php on line 31 Deprecated: call_user_func_array() expects parameter 1 to be a valid callback, non-static method LiteSyntaxSupporter::wpAutoP() should not be called statically in /home/o/optimatour/sonika.ru/public_html/blog/wp-includes/class-wp-hook.php on line 324

Сегодня обнаружила очень полезную фичу для WordPress, которая обрадовала меня черезвычайно.

Все дело в том, что часто хочется на странице категории (там, где список постов конкретной категории) вывести вступительное слово, например «Вы просматриваете рубрику «Кулинарные рецепты», здесь собраны все мои любимые рецепты приготовления яиц всмятку, наслаждайтесь!».

Вообщем-то несложно вывести такой текст для каждой категории с помощью условий in_category (5), но каждый раз при внесении изменений в текст описания или заведении новой категории следовало править код файлов Темы, неудобно.

Но теперь я знаю — есть способ лучше!

Обращали внимание на поле «Описание: (не обязательно)» при создании или изменении рубрики в админке? Я все время гадала, для чего же оно. Оказывается, туда можно вписать тот самый текст («Вы просматриваете рубрику…») и он будет показан на странице категории!

Всего-то нужно добавить в файл category.php или archive.php (в зависимости от того, какой шаблон используется для вывода рубрик) такой код:


<?php if ( $paged < 2 ) {
// Do stuff specific to first page
?>
<?php if ( is_category() ) : ?>
<h2 id="category-name-header">
<?php echo $cache_categories[$cat]->cat_name ?>
</h2>
<?php add_filter('category_description', 'wpautop'); ?>
<?php add_filter('category_description', 'wptexturize'); ?>
<div id="category-description">
<?php echo category_description(); ?>
</div>
<?php endif; ?>
<?php } else {
// Do stuff specific to non-first page
?>
<?php } ?>

Этот код будет выводить описание категории только на первой странице этой категории (есть возможность выводить что-нибудь для последующих страниц категории — Do stuff specific to non-first page).

Если нужно выводить описание рубрики на всех страницах, то код будет такой:


<?php if ( is_category() ) : ?>
<h2 id="category-name-header">
<?php echo $cache_categories[$cat]->cat_name ?> Category
</h2>
<?php add_filter('category_description', 'wpautop'); ?>
<?php add_filter('category_description', 'wptexturize'); ?>
<div id="category-description">
<?php echo category_description(); ?>
</div>
<?php endif; ?>

Меня огорчили только 2 вещи: нельзя применить html код в описании, и название категории у меня не выводится…(<h2 id="category-name-header">бла-бла</h2>)…

Поэтому вместо


<h2 id="category-name-header">
<?php echo $cache_categories[$cat]->cat_name ?> Category
</h2>

я успешно использовала такой код:


<h2 id="category-name-header">
<?php single_cat_title(); ?>
</h2>

шсточник радости — Кодекс WordPress: Custom Category Page Text.

Дополнительно: про устройство Тем для WordPress можно прочитать здесь: иерархия шаблонов для WordPress, english, с картинками :)

О терминах: рубрика = категория, шаблон = php файл Темы.


  1. # Eva (1) 04.06.2014 в 17:13

    Шикарно. Первый код встал на ура, всё красиво заработало!
    Спасибо!

  2. # Руслан (1) 27.10.2014 в 21:42

    Подскажите пожалуйста, в какую часть кода конкретно нужно вставить данный код.  У меня archive.php и я не понимаю куда именно нужно вставить код, спасибо.

  3. # Антон (1) 01.01.2015 в 16:36

    Пост взял на заметку, возможно пригодится, писать описание к рубрикам, может помочь в продвижении сайта

Подписаться на фид.
Deprecated: Функция comments_rss_link с версии 2.5.0 считается устаревшей! Используйте post_comments_feed_link(). in /home/o/optimatour/sonika.ru/public_html/blog/wp-includes/functions.php on line 6121 RSS комментариев к этой записи.

Sorry, the comment form is closed at this time.

Deprecated: Функция previous_post с версии 2.0.0 считается устаревшей! Используйте previous_post_link(). in /home/o/optimatour/sonika.ru/public_html/blog/wp-includes/functions.php on line 6121 « Плагины Reverse Order Comments и Comment Karma    Deprecated: Функция next_post с версии 2.0.0 считается устаревшей! Используйте next_post_link(). in /home/o/optimatour/sonika.ru/public_html/blog/wp-includes/functions.php on line 6121 Мини-отпуск, ура! »

[ ←Вернуться к стандартному виду ]

Печатная версия