Как сделать «Похожие записи» без плагинов
Привет всем читателям блога.
Сегодняшний пост я пишу т.к. сказать больше для себя чтобы не забыть т.к. сказать это моя шпаргалка, которая возможно и вам пригодиться.
Сегодня мы сделаем с вами вывод «Похожих записей» или как ещё называют «Related posts» без плагинов.
Многие из вас наверное знают что чем меньше плагинов на блоге, тем лучше, тем меньше нагрузка на блог.Вот ия стараюсь где могу обойтись без них.
Итак привожу вам код, который нужно вставить в блог, чтобы отображались «Похожие записи».
Вот код, который выводит «Похожие записи» по рубрикам.Я использую его т.к. мне нравится, когда вывод происходит по рубрикам, а не по меткам. Хотя кому как нравится и я приведу 2 кода.
Код мы вставляем в файл single.php, который находится в «Редакторе» во вкладе «Внешний вид» в админке нашего блога.
Итак идём в файл single.php и в то место где нам нужно вывести «Похожие записи» вставляем такой кусок кода
Вывод «Похожих записей» по категориям.
1234567891011121314151617181920212223242526272829<div class=»sample-posts»><h3>Похожие статьи:</h3><?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, // Number of related posts that will be shown.’caller_get_posts’=>1);// Rest is the same as the previous code$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_attribute(); ?>»><?php the_title(); ?></a></li><?php}echo ‘</ul>’;}wp_reset_query();}?></div>
Вывод »Похожих записей» по меткам.
123456789101112131415161718192021222324252627<h3>Похожие статьи:</h3><div class=»sample-posts»><ul><?php//for use in the loop, list 5 post titles related to first tag on current post$tags = wp_get_post_tags($post->ID);if ($tags) {$first_tag = $tags[0]->term_id;$args=array(‘tag__in’ => array($first_tag),’post__not_in’ => array($post->ID),’showposts’=>5,’caller_get_posts’=>1);$my_query = new WP_Query($args);if( $my_query->have_posts() ) {while ($my_query->have_posts()) : $my_query->the_post(); ?><li><a href=»<?php the_permalink() ?>» rel=»bookmark» title=»Permanent Link to <?php the_title_attribute(); ?>»><?php the_title(); ?></a></li> <?phpendwhile;}wp_reset_query();}?></ul></div>
Как правило этот кусок кода вставляем где-то после меток в постах.