Для начала хотел бы рассказать что нам дает вывод похожих статей в записи. Они дают нам то, что на сайте появляется дополнительная перелинковка, это ведет к тому, что время пребывание на вашем сайте увеличивается. Несомненным плюсом будет еще и то, что это придаст вашему сайту какую-то визуальную составляющую, которая может придать вашему сайту красоты. Ну и это будет просто полезно для посетителей.
Конечно чтобы реализовать такой функционал, есть несколько способов:
- Сделать с помощью плагина;
- Сделать руками.
Я не сторонник плагинов на сайте, т.к. они могу лишний раз нагрузить сайт что в последствии повлияет на скорость загрузки, поэтому я расскажу вам про второй способ. К тому же код писать не надо, все уже давно написано за нас 🙂
Вывод похожих записей может быть в нескольких вариантах:
- вывод по меткам;
- вывод по рубрикам.
Вывод похожих записей по меткам
Вам нужно зайти в файл single.php и в нужном месте (например перед выводом комментариев) вставить код ниже
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
<div class="poxojie_zapisi"> <?php $categories = get_the_category($post->ID); if ($categories) { $category_ids = array(); foreach($categories as $individual_category) $category_ids[] = $individual_category->term_id; $args=array( 'category__in' => $category_ids, 'post__not_in' => array($post->ID), 'showposts'=>5, 'orderby'=>rand, 'caller_get_posts'=>1); $my_query = new wp_query($args); if( $my_query->have_posts() ) { echo '<h3>Похожие записи:</h3>'; echo '<ul>'; while ($my_query->have_posts()) { $my_query->the_post(); ?> <li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"> <?php the_post_thumbnail(); ?><br /><?php the_title(); ?></a></li> <?php } echo '</ul>'; } wp_reset_query(); } ?> </div> |
А теперь немного пояснений по коду:
‘category__in’ => $category_ids
(8 строка). Указываем что вывод наших статей будет осуществляться по рубрикам
‘showposts’=>5
(строка 10). Указываем количество похожих постов, которые мы хотим выводить
‘orderby’=>rand
(строка 11). Данная строка отвечает за случайный порядок вывода похожих статей. Если вы хотите чтобы выводились самые свежие похожие статься, можете удалить данную строку
‘caller_get_posts’=>1
(строка 12). Отменяет вывод одинаковых статей. Это нужно чтобы в 5-ку похожих статей, не попали 2 одинаковых.
echo ‘<h3>Похожие записи:</h3>’
(строка 15). Указывается заголовок блока. Можно заменить «Похожие записи» на то, что вам больше подходит.
Вывод похожих записей по меткам
Всё так же, выбираем место — вставляем код.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<div class="poxojie_zapisi"> <h3>Похожие записи:</h3> <?php $tags = wp_get_post_tags($post->ID); if ($tags) { $tag_ids = array(); foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id; $args=array( 'tag__in' => $tag_ids, 'orderby'=>rand, 'caller_get_posts'=>1, 'post__not_in' => array($post->ID), 'showposts'=>5 ); $my_query = new wp_query($args); if( $my_query->have_posts() ) { echo '<ul>'; while ($my_query->have_posts()) { $my_query->the_post(); ?> <li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"> <?php the_post_thumbnail(); ?><br /><?php the_title(); ?></a></li> <?php } echo '</ul>'; } wp_reset_query(); } ?></div> |
Краткое описание:
<h3>Похожие записи:</h3>
(строка 2). Заголовок блока;
‘tag__in’ => $tag_ids
(строка 8). Вывод осуществляется по тегам (меткам);
‘orderby’=>rand
(строка 9). Рандомный порядок вывода постов;
‘caller_get_posts’=>1
(строка 10). Отменяем повторение одинаковых статей;
‘showposts’=>5
(строка 12). Указываем количество записей для вывода.;
Дальше вам останется только оформить это все дело css-стилями
Если у вас есть вопросы, пишите в комментарии, буду рад помочь.
Чтобы не пропустить выход новых статей, подписывайтесь на наш telegram-канал и соц.сети 😉
Оставьте ответ