Как показывать посты рандомно в WordPress

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

 

 

Зачем показывать случайные посты в WordPress

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

Чтобы исправить это, вы можете использовать внутреннюю перелинковку со старыми статьями в новых публикациях. Размещение ссылок на старые статьи в новых публикациях поможет читателям их легче обнаружить. Этот способ также увеличит просмотры страниц и поспособствует более лучшему SEO рейтингу.

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

Итак, давайте перейдем к практике и рассмотрим, как можно легко отображать посты рандомно в WordPress.

 

 

Показываем посты рандомно в WordPress с помощью шорткода

Все, что требуется, это добавить небольшой код в файл функций вашей темы. Откройте файл functions.php вашей активной темы и добавьте этот код:

function sebweo_rand_posts() {
 $args = array(
  'post_type' => 'post',
  'orderby'   => 'rand',
  'posts_per_page' => 7,
 );
 $the_query = new WP_Query( $args );
 if ( $the_query->have_posts() ) {
  $string .= '<ul>';
  while ( $the_query->have_posts() ) {
    $the_query->the_post();
    $string .= '<li><a href="'. get_permalink() .'">'. get_the_title() .'</a></li>';
  }
  $string .= '</ul>';
  /* сбрасываем изначальные данные постов */  wp_reset_postdata();
 } else {
   $string .= 'постов не найдено';
 }
 return $string;
}
add_shortcode('random-posts','sebweo_rand_posts');

 

 

Этот код просто создает функцию, которая отображает 7 случайных постов. Затем создается шорткод, который можно использовать в любом месте вашего сайта (например, в сайдбаре через виджет).

Если у вас не получается использовать шорткод внутри текстового виджета, тогда еще добавьте следующий код в файл functions.php вашей темы:

add_filter('widget_text', 'do_shortcode');

 

 

Теперь вы можете показывать посты вашего блога на WordPress в рандомном порядке, используя только что созданный шорткод. Вы можете добавить шорткод [random-posts] в сайдбар через виджет, или напрямую в текст поста или страницы.

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

 

Recent Posts

Удаленная разработка из тропиков: Техническая сторона, инфраструктура и организация рабочего пространства

Алоха! Последние несколько лет окончательно закрепили тренд на отдаленную работу. Для веб-разработчиков, DevOps-инженеров и администраторов…

4 дня ago

Хмель, солод, дрожжи и вода: как создается характер пива

Кажется, пиво — напиток простой: четыре ингредиента, понятная технология. Но одни и те же хмель,…

5 дней ago

SIP-транки – что это такое и как они работают в IP-телефонии

В современной IP-телефонии немаловажную роль играет технология, обеспечивающая передачу голоса через Интернет между бизнесом и…

3 недели ago

Почему стоит выбрать ноутбук Apple MacBook Pro 14 для современных ИТ-задач

Выбор рабочей машины для веб-разработчика или администратора серверов — является всегда компромиссом между портативностью, автономностью…

3 недели ago

Практический гайд: как подобрать надежный бесперебойник для домашнего роутера

Исчез свет и вместе с ним мгновенно исчезла связь с окружающим миром? Это знакомая и…

3 недели ago

Google теряет монополию: Как подготовить IT-сайт к AI-поиску (GEO)

Что вообще случилось с поиском в интернете? Я не побоюсь сказать это вслух: произошла настоящая…

1 месяц ago