Как вывести описание рубрики wordpress

Сегодня поговорим о том, как вывести описание рубрики / категории, таксономии wordpress. Хочу предложит вам 2 варианта решения проблемы вывода описания рубрик вордпресс. Для того чтоб выбрать интересующий вас вариант воспользуйтесь навигацией по странице:

  1. вывод класического описания рубрики
  2. создание и вывод нового поля с редактором для рубрики wordpress

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

Вывод классического описания рубрик wordpress

к менюДабы не запутывать вас дорогие читатели, под класическим описанием категорий я имею вот этот текстовый блок:opisanie-rubriki-wordpress-1который присутствует у всех категорий / рубрик / таксономий вордпреса по-умолчанию.

Но как пишут разработчики ВП:

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

Некоторые темы могут и то Слава Богу, теперь попробуем сделать так чтобы и наша тема могла делать вывод описания рубрик wordpress.

Открываем нашу тему и смотрим какие там есть файлы из перечисленных:

  • category.php
  • archive.php
  • index.php

Чтобы определить куда нам нужно записывать код заходим по фтп и по очереди меняем имена файлов, добавляем знак _ в имя файла. Каждый раз нужно обновлять категорию и смотреть изменилась она или нет. (Совсем забыл, важно отключить кеш, эсни он до этого был включен 🙂 иначе будем искать очень и очень долго). Если таким образом найти нужный файл не получится, открываем каждый документ и после такой строчки

<?php get_header(); ?>
пишем число 1, для следующего файла 2, потом 3 и так далее. Запускаем нашу категорию и смотрим какая цифра после шапки у нас выведена, по этому номеру мы легко сможем определить куда нужно писать следующий код.

А код для того, чтобы вывести описание рубрики wordpress не такой уж и сложный, базируется на функции category_description.

category_description( $category_id ); - выводит классическое описание рубрики wordpress

$category_id - ID категории, описание которой нужно получить. Можно оставить пустым и ВП сам подставить нужную информацию.

Получаем описание категорий wordpress вот так:

<?php $str=category_description(); if(!empty($str)){echo apply_filters("the_content", $str);}?>

Вставляем этот код в файл который мы определили до этого. Заходим в рубрику и наслаждаемся работой, конечно если мы не забыли заполнить поле "описание" для рубрики 🙂 .

Конечно, вы можете мне упрекнуть, что ж это такое за описание, ведь здесь нет толкового редактора Tiny, да и это описание присутствует в мета поле description. Ну теоретически эти проблемы решаемые. Для того чтобы добавить редактор Tiny или TinyMCE или WYSIWYG нам достаточно скачать и установить плагин CategoryTinymce. Скачать его можно вот здесь: Получить ссылку на (CategoryTinymce).

Достаточно просто активировать вот этот плагин и у вас появится вот такой редактор Tiny для рубрики:

описание рубрики wordpress

Теперь как решить проблему с описанием в мета теге description ? - для этого можно скачать плагин для СЕО оптимизации, например вот этот: Получить ссылку на (Yoast SEO). Более подробно о seo плагины для wordpress можно узнать перейдя по ссылке.

Теоретически на этом все, теперь у ваших рубрик / категорий должно отображаться описание на странице.

С рубриками вопрос решили, а вот с таксономиями нет. Если нам нужно вывести описание таксономии wordpress придется придумывать новый код.

Вывести класическое описание таксономии wordpress

к менюДля начала нужно найти в каком файле формируется наша таксономия, для этого в каждый файл темы добавляем одно число: 1, 2 3 4 5 6. Проверяем, какое число у нас сработало туда и нужно писать код. Описывал этот момент выше.

Для того чтобы вывести описание таксономии wordpress нам потребуется функция term_description.

term_description( $term_id, $taxonomy ); - возвращает описание для таксономии WP.

$term_id - идентификатор таксономии

$taxonomy - имя таксономии.

Оба поля можно оставить пустыми и WordPress сам подставить текущие значения.

Код вывода описания таксономии будет выглядеть вот так:

<?php $str=term_description(); if(!empty($str)){echo apply_filters("the_content", $str);}?>

Если вы правильно заполнили поле "описание" для таксономии то вы должны увидеть текст. Тут конечно еще одно но, у вас опять нет редактора Tiny для таксономий. Чтоб включить редактор TinyMCE придется скачать еще один плагин Taxonomy TinyMCE для добавления редактора tiny или WYSIWYG в таксономию. Скачать плагин можно вот здесь: Получить ссылку на (Taxonomy TinyMCE).

Проблема с мета description в этом случаи стает ребром и приходится или отключать мета для таксономий или мериться с тем что мета поле и описание теперь общие.

Как вы поняли не самая лучшая ситуация. Я специально решил описать классический вариант первым, чтоб показать насколько все сложно и геморойно. Лично я, уже не вывожу описание рубрики wordpress в такой способ больше года. Рекомендую прочесть второй способ.

 

Создаем и выводим описание для рубрики wordpress на плагине ACF

к менюЕсли вы не знаете что такое плагин ACF думаю стоить почитать о нем вот здесь: advanced custom fields. Если вкратце, то он умеет делать произвольные поля для чего угодно, в том числе для категорий / рубрик / таксономий / меток.

Скачать плагин можно вот здесь: Получить ссылку на (ACF).

Более подробно о том, что такое wordpress custom fields описано по этой ссылке.

Пошаговая инструкция для отображения произвольного поля описание в рубрике на ACF:

1) Устанавливаем плагин ACF и активируем его.

2) Переходим во вкладку "Произвольные поля"

описание рубрики wordpress

3) Создаем новый тип полей

opisanie-rubriki-acf-2

4) Вводим название для группы полей и нажимаем "+ добавить поле"

opisanie-rubriki-acf-3

5) В появившемся окне вводим имя поля, имя в ВП (обязательно латиницей без пробелов) и указываем тип поля "Редактор WYSIWYG" (он же ваш TinyMCE). Все как на рисунке:

opisanie-rubriki-acf-4

6) Прокручиваем настройки ниже и в блоке "Местоположение" указываем значения как на следующем рисунке:

wordpress вывести описания категорий

7) Поднимаемся в самый верх и нажимаем кнопку "Опубликовать / обновить"

вывести описание рубрики wordpress

8) Переходим во вкладку "Рубрики"

opisanie-rubriki-acf-7

9) Выбираем нужную рубрику и нажимаем изменить

opisanie-rubriki-acf-8

10) И что мы видем? - у нашей рубрики появилось новое поле (если не появилось стоить нажать ctrl+F5)

описание категорий wordpress

11) Записываем в это поле нужный текст.

12) Открываем файл темы от куда выводится наша категория (как узнать где этот файл я описывал в первом примере) и забрасываем вот туда такой простенький код:

<?php if($desc_acf=get_field("desc_acf",get_category($cat))){ echo apply_filters("the_content", $desc_acf);}?>

13) Нажимаем на кнопку просмотреть и наслаждаемся работой и отображением описания категорий.

opisanie-rubriki-acf-10

 

Вот так вот легко и просто мы сделали описание рубрики wordpress.

На этом можно закончить, но я обещал что покажу как вывести описание для таксономий wordpress на произвольном поле с редактором TiniMCE.

Смотрим пример выше и делаем все как я в нем описал, только в пункте 6 вам нужно указать вместо слова "Рубрики" имя вашей таксономии. У меня таксономия называется "tmp" по этому получается вот такая картинка в замен той что у п. 6:

opisanie-rubriki-acf-11

и нажимаем "Обновить".

Далее заходим в нашу таксономию и по аналогии с рубриками видим что появилось поле:

описание рубрики wordpress

И мы можем записать туда текст описание рубрики.

Теперь осталась маленькая правка шаблона, аналог того что мы делали в п. 12. Определяем где выводится наша таксономия, описывал выше в классическом варианте как это делается и закидываем туда вот такой код:

<?php if($desc_acf=get_field("desc_acf",get_term_by('slug',get_query_var('term'),get_query_var('taxonomy')))){
echo apply_filters("the_content", $desc_acf);
}?>

На этом все, ваше описание для таксономий должно отображаться на сайте.

В качестве благодарности можно нажать лайк и распространить этот пост среди своих друзей :

к менюP.S.: Основная цель этого поста показать как можно вывести описание рубрики wordpress стандартным способом и с помощью плагина ACF. Как по мне второй вариант проще и более предпочтительный. Если у вас не получается вывести описание категорий или таксономий wordpress пишите свои вопросы в комментариях, я с радостью на них отвечу.

Комментарии к записи «Как вывести описание рубрики wordpress»:
  1. Василий:

    Спасибо.отличный плагин, всё расставил как надо и по своим местам
    Вот посмотрите (-spam-url-)

  2. Егор:

    Подскажите. как передать полученное описание рубрики всем вложенным в нее записям?

  3. Дмитрий:

    Добрый день. Возникла такая проблема: создал поле для категории через ACF prntscr.com/ewg3vs и оно появилось здесь prntscr.com/ewg45i , а вот здесь prntscr.com/ewg4gs . Что я сделал не так или не доделал?(

  4. Михаил:

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

  5. Артур:

    Нашел решение, вместо последнего кода, указанного в статье вставил вот этот код:

    taxonomy;$term_id = $queried_object->term_id; the_field('desc_acf', $taxonomy . '_' .$term_id); ?>

  6. Артур:

    Очень полезно, спасибо за пост! Описание для страницы категории удалось вывести, но для меток почему то не работает, все делал по инструкции. В качестве меток использую стандартные возможности WordPress, может в этом дело?

    • admin:

      Добрый день.
      Для метки можно воспользоваться вот таким кодом, он написан именно под них:

      <?php
      if(is_tag()){
      if($desc_acf=get_field("desc_acf",get_term_by("slug",get_query_var('tag'),"post_tag"))){
      echo apply_filters("the_content", $desc_acf);
      }
      }
      ?>

      Кстати если post_tag заменить на categor - то этот код будет работать для категорий. Конечно в этом случае придется заменить параметр get_query_var на cat для категорий.

  7. Марина:

    Если делать описание рубрики wordpress через стандартную функцию то у вас может появится большая портянка и это очень плохо. Найти категорию в таком скопе текста практически невозможно. А вот второй вариант на АЦФ это хорошее решение.

  8. MAX:

    Я правильно вас понимаю, второй вариант для создания описание рубрики wordpress более легкий с точки зрения нагрузки на сервер. Тут мы только 1 плагин подключаем, а если он уже использовался до этого то вовсе подключать ничего не нужно??
    В первом варианте по любом нужно 2 плагина?, или я ошибаюсь.

Сделать заказ
Онлайн помощь по WordPress