У вас когда-нибудь возникала необходимость вывести свои свежие записи из каждой отдельной рубрики в свой сайдбар WordPress? Недавно один из наших пользователей спросил нас, существует ли способ быстро вывести свежие записи из определенной рубрики в виджет сайдбара WordPress. В сегодняшней статье мы покажем вам как отобразить свежие записи для каждой рубрики в сайдбаре WordPress.
Существует два способа вывести свежие записи из каждой отдельной рубрики в WordPress. Первый способ реально прост и удобен для новичков, потому как предполагается использовать плагин для вывода записей в виджет (не нужно заморачиваться с кодом).
Второй способ использует сниппет кода для (подойдет для продвинутых пользователей), и реализовать задуманное получится без плагина.
Единственным преимуществом использования кода в том, что вы не будете зависеть от плагина, а также сможете более детально настроить вывода. Однако, способ с плагином ПРОЩЕ и позволяет настроить опции, которые удовлетворят 95% людей (это отображение миниатюры записи, вывод цитаты записи и контроль ее длины, отображение даты публикации записи и количества комментариев и т.д.)
Выводим свежие записи из каждой рубрики (с помощью плагина)
Первым делом вам необходимо установить и активировать плагин Category Posts Widget.
После активации необходимо перейти в раздел Внешний вид » Виджеты, где вы найдете новый виджет под названием Category Posts в списке доступных.
Просто перетяните виджет Category Posts в сайдбар в то место, где нужно вывести свежие записи из рубрики.
Опции виджета говорят сами за себя. Первым делом вам нужно указать заголовок для раздела записи рубрики, а затем выбрать саму рубрику. После этого можно настроить другие опции отображения, вроде количества записей, цитату, миниатюру и т.д.
После окончания настройки кликните на кнопку сохранения настроек виджета. Можно перейти на сайт, чтобы увидеть работу виджета в действии.
Выводим свежие записи из каждой рубрики без плагина (кодом)
В этом способе мы будем использовать сниппет кода для вывода свежих записей из определенной рубрики.
Для начала вам нужно добавить следующий код в файл functions.php вашей темы или в плагин для сайта WordPress:
function devise_postsbycategory() { // запрос $the_query = new WP_Query( array( 'category_name' => 'announcements', 'posts_per_page' => 10 ) ); // Цикл if ( $the_query->have_posts() ) { $string .= '<ul class="postsbycategory widget_recent_entries">'; while ( $the_query->have_posts() ) { $the_query->the_post(); if ( has_post_thumbnail() ) { $string .= '<li>'; $string .= '<a href="' . get_the_permalink() .'" rel="bookmark">' . get_the_post_thumbnail($post_id, array( 50, 50) ) . get_the_title() .'</a></li>'; } else { // if no featured image is found $string .= '<li><a href="' . get_the_permalink() .'" rel="bookmark">' . get_the_title() .'</a></li>'; } } } else { // ни одной записи не найдено } $string .= '</ul>'; return $string; /* Восстанавливаем оригинальные данные записи */ wp_reset_postdata(); } // Добавляем шорткод add_shortcode('categoryposts', 'devise_postsbycategory'); // Активируем выполнение шорткода в текстовом виджете add_filter('widget_text', 'do_shortcode');
Убедитесь, что вы заменили ‘announcements’ на слаг своей рубрики.
Код просто выполняет запрос к WordPress для того, чтобы получить 10 записей из определенной рубрики. Затем он выводит эти записи в виде маркированного списка. Если у записи есть миниатюра изображения, то он отобразит ее.
В конце, мы создали шорткод ‘categoryposts’ и активировали его выполнение в текстовых виджетах сайта.
Существует три способа вывести свежие записи из определенной рубрики с помощью кода выше.
Первый, это можно просто вставить следующий код в любое место шаблона сайта, где нужно вывести список (например, footer.php, single.php и т.д.)
<?php devise_postsbycategory() ?>
Второй и третий способ предусматривают использование шорткода в виджетах или внутри ваших записей/страниц.
Просто переходим в раздел Внешний вид » Виджеты и добавляем текстовый виджет в свой сайдбар. Теперь добавляем шорткод [categoryposts] в текстовый виджет и сохраняем его. Теперь можно перейти на сайт, чтобы увидеть свежие записи из определенной рубрики в сайдбаре.
Если вы хотите вывести новые записи из рубрики на определенной странице или записи, то просто вставьте шорткод в область контента записи.
По-умолчанию, ваш список скорее всего будет выглядеть не очень симпатично. Нужно будет использовать CSS для стилизации списка записей рубрики. Можно использовать нижеприведенный код в качестве отправной точки в таблице стилей темы.
ul.postsbycategory { list-style-type: none; } .postsbycategory img { float:left; padding:3px; margin:3px; border: 3px solid #EEE; }
Вот и все, мы надеемся, что эта статья помогла вам вывести свежие записи из определенной рубрики в сайдбар WordPress. Также вам может быть интересна статья о самых интересных хаках и плагинах для рубрик для WordPress.
По всем вопросам и отзывам просьба писать в комментарии ниже.
Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.