Как установить миниатюры для рубрик WordPress

Сегодня хочу показать вам пошаговую инструкцию установки миниатюры для рубрик WordPress. Сразу наверное стоить оговориться, это не стандартное решение на базе плагина "Taxonomy Images II" или "Category Images II" которые так хорошо описанные в сети интернет и которые уже больше двух лет как устарели.

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

Я предлагаю задать миниатюру для рубрики через произвольные поля WordPress для категорий, таксономий и меток. Создавать поля для wordpress картинка рубрики мы будем на базе плагина Advanced Custom Fields.

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

Пошаговая настройка: wordpress картинка рубрики

1) Нужно установить к себе на сайт плагин ACF, вот ссылка на него: Получить ссылку на (ACF)

wordpress картинка рубрики

2) После активации плагина у вас появится в левом сайдбаре админки вот такая вкладка:miniatyra-wp

3) Заходим в нее и нажимаем "добавить новую"

miniatyra-wp-1

 

4) Даем имя для блока "Поля для категории" и нажимаем кнопку "Опубликовать"миниатюры рубрик wordpress

5) Нажимаем вкладку "+ добавить поле"

миниатюры рубрик wordpress

6) и заполняем все поля, таким образом как это я делаю на скине ("Ярлык поля"-"wordpress картинка рубрики", "Имя поля" - "imgcat1", "Тип поля" - "Изображение", "Вернуть значение" - "Ссылка на изображение"):

miniatyra-wp-4

7) Нажимаем кнопку "Обновить" справа в верхуminiatyra-wp-5

8) В блоке местоположение указываем "в первой выпадашке" - "термин таксономии", "во второй" - "равно", "третья" - "Рубрики", как на скриншоте:

wordpress картинка рубрикиМаленькое уточнение, если вы делаете миниатюру не для рубрик / категорий, то нужно указать другое имя вместо "Рубрики". Например метки или имя вашей таксономии.

9) Повторяем п.7, нам нужно одновить информацию.

10) Мы добавили поле wordpress картинка рубрики для нашего сайта, и теперь можем его заполнить во вкладке рубрики. (Если это таксономия или метка то в соответствующей вкладке)

11) Создаем рубрику или открываем уже созданную:miniatyra-wp-7

12) Заходим в рубрику и там видем вот такую замечательную вкладку "wordpress картинка рубрики" и там же справа можно добавить изображение для категории:wordpress картинка категории

13) После того как мы добавили картинку для рубрики, у нас получился там вот такой блок:wordpress картинка рубрикиНажимаем сохранить изменения в категории.

С админкой сайта мы закончили, но еще нужно настроить код вывода картинки рубрики WP.

Код для отображения миниатюры рубрик wordpress

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

14) Продолжаем нашу пошаговую настройку миниатюры рубрик / таксономий / меток. Для начала выведем картинку категории в текущей рубрике, пожалуй это самая простая задача. Определяем шаблон, обычно это category.php или index.php и закидываем туда вот такой код:

<?php if($imgcat1=get_field("imgcat1",get_category($cat))){?>
<img src="<?php echo $imgcat1;?>"/>
<?php }?>

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

15) Сейчас покажу код, который выведет картинку рубрики wordpress в произвольном месте, например сайдбаре или главной странице. Код привожу полностью рабочий, его достаточно вставить в любое место, кроме цикла ВП 🙂

<?php
$categories = get_categories(array('taxonomy'=>'category','hide_empty'=>false));
if($categories){
foreach($categories as $cat){?>
<div class="cat">
<div class="name"><a href="<?php echo get_category_link($cat->term_id);?>"><?php echo $cat->name;?></a></div>
<?php if($imgcat1=get_field("imgcat1",$cat)){?><div class="img"><img src="<?php echo $imgcat1;?>"/></div><?php }?>
</div>
<?php }?>
<?php }?>

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

Для начала мы делаем выборку всех категорий, а потом проверяем есть ли у них поле с миниатюрой, если есть выводим его

<?php if($imgcat1=get_field("imgcat1",$cat)){?><div class="img"><img src="<?php echo $imgcat1;?>"/></div><?php }?>

На этом пожалуй все, этих двух кодов вам будет достаточно для того чтоб вывести картинку рубрики WordPress в любом месте, а также в самой категории.

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

Если wordpress картинка категории не появилась на вашем сайте значит вы что то сделали не так. Можно описать проблему в комментариях или в разделе Вопрос / Ответ.

Комментарии к записи «Как установить миниатюры для рубрик WordPress»:
  1. Игорь:

    Скажите пожалуйста, как сделать тоже самое только для меток?
    Ни как не получается вывести картинку

    • admin:

      Добрый день. Для метки этот код будет вот таким:

      <?php if($desc_acf=get_field("imgcat1",get_term_by("slug",get_query_var('tag'),"post_tag"))){?><div class="img"><img src="<?php echo $imgcat1;?>"/></div><?php }?>

  2. Княгиня:

    День добрый.
    Не подскажете, в чём дело: при создании поля картинки для рубрики это поле появляется при создании новой рубрики, но в уже созданной его нет. Отчего так и как это лечить?

    • Княгиня:

      Сори, вопрос снимается. Похоже, было достаточно обновить плагин.

  3. Антон:

    Добрый день! Подскажите пожалуйста, как сделать, чтобы выводил определенную рубрику, а то сейчас выводит все рубрики

    • admin:

      Добрый день. Уточните плз. где вы хотите выводить одну рубрику? На главной? Уточните, и я постараюсь вам помочь. Нажав ответить, вы сможете написать в этом комментарии, и не будете плодить новый 🙂

  4. Андрей:

    Сделал все как описано в алгоритме. На главной получилось отобразить список этих рубрик, но не получается вывести картинку в файле archive.php. Вставлял тот код, что вы вставляли "category.php или index.php", только со своим именем поля (cat_pct).

    • admin:

      Добрый день. Если у вас есть файл category.php в теме, то для вывода рубрик будет использован именно он, вместо index.php или archive.php

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

    • Андрей:

      Файла category.php в теме нет. Вот все, что у меня есть в теме (-url-). Проверил код и увидел что, условие if($cat_pct=get_field("cat_pct",get_category($cat))) не выполняется. Пробывал просто выводить echo "555", а ничего не получилось. Может я не туда вставлял? (-url-)

    • admin:

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

      <?php
      if(is_category()){
      $thisCat=get_category(get_query_var('cat'),false);
      if($imgcat1=get_field("imgcat1",$thisCat->term_id)){?>
      <img src="<?php echo $imgcat1;?>"/>
      <?php } }?>

    • Андрей:

      Ваш код не подошел. Нашел другое решение. Возможно костыль, но работает)
      'category','hide_empty'=>false,'include'=>$category[0]->term_id));
      if($categories){
      foreach($categories as $cat){?>
      <img src=""/>

    • admin:

      Но это ж выборка категорий. и 100% костыль 🙁
      И если у вас есть $category[0]->term_id то почему бы его не использовать вместо переменной идентификатора. Вы ж понимаете что делаете поиск категории включая только одну с таким вот идентификатором $category[0]->term_id а потом загоните ее в цикл и опять получаете ее идентификатор 🙂

  5. Артур:

    Спасибо, полезная информация, вроде все получилось, но возник вопрос, можно ли сделать вывод миниатюры только одной рубрики на странице поста (конечно же пост принадлежит данной рубрике)?

    • admin:

      Добрый день.
      Конечно можно, только вот зачем вам на странице поста миниатюра из категории 🙂 ?
      Надо получить массив всех категорий взять ИД первой и вывести для нее миниатюру

  6. Николай:

    Здравствуйте. У меня проблема с выводом картинок из произвольных рубрик. Вставляю ваш код в габлон category.php, но ничего не выводится. Подскажите, в чем может быть проблема?

    • admin:

      Добрый день.
      Можете показать сайт.
      Возможно вы дали неправильное имя полю, не такое как у меня "imgcat1" тогда везде нужно писать по другом ваш вариант. Или например забыли установить чекбокс "Вернуть значение" - "Ссылка на изображение"
      по умолчанию стоит ИД.

  7. Илья:

    Здравствуйте. У меня на сайте wordpress картинка рубрики отсутствует. Сделал вроде все как вы описали но добавить миниатюру не могу. Подскажите что мне делать?

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