Приветствую! Вот наконец-то я и дождался своего отпуска, впереди целый месяц отдыха. Но это не означает что прекратится работа на блоге. И сегодня по плану очередной пост из рубрики Кодекс.

Вывод похожих записей без плагинов на блоге вордпресс

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

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

Код для вывода похожих записей на блоге

Критерием схожести будет служить присвоение рубрики статье, т.е. в конце каждого поста можно вставить похожие записи из той же рубрики. И для этого не требуется присваивать посту метки (теги) – я их и не использую, от индексации они все равно закрываются, т.к. приводят к дублированию контента внутри одного домена, удобство их использования лично для меня остается под вопросом, а оставлять для красоты – не практично…

До того как я стал использовать код для вывода похожих записей я пользовался плагином WordPress Related Posts и хочу заметить, что внешний вид списка ничем не отличается ни при использовании плагина, ни после отказа он него в пользу кода. И это очень хорошо, что читатель внешне не находит отличий, ему не приходится привыкать к чему то новому. Да я и сам люблю стабильность.

Вывод похожих записей на блоге

Немножечко про стабильность… Вот уже на протяжении двух месяцев Блог Свободного Вебмастера немного изменил свой внешний вид и перешел от трехколоночного дизайна (2 сайдбара + основная часть) к двухколоночному (остался один правый сайдбар, основная часть расширилась). Я так и не находил времени узнать у своих читателей мнения по поводу изменений. Как Вы считаете, так лучше?

Извиняюсь за оффтоп, продолжаю тему и собственно привожу сам код, способный заменить плагины и выводить список похожих записей без плагинов в конце каждого поста:

<div class="sample-posts">
<h4>Читайте также:</h4>
<?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,
	'caller_get_posts'=>1);
	$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>

Настройка вывода похожих записей

Обратите внимание на строку:

'showposts'=>5,

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

В CSS можно задать дополнительные настройки внешнего вида, специально для этого исполняемый код заключен в дивы (sample-posts) ;-) . С помощью таблиц стилей есть возможность задать фон или подложить картинку на задний план, обвести в рамку, использовать другой шрифт, для списка использовать другие маркеры и т.д. – возможности ограничены лишь спецификацией CSS и собственной фантазией!

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