У вас в блоге есть четкая структура рубрик для ваших записей? Если да — то вам точно пора создать секцию с "Похожими записями" для вашего блога. Это позволит обогатить ссылками создаваемый контент за счет показа тематически связанных постов.
Предлагаю вашему вниманию быструю рекомендацию, как добавить похожие посты из одной и той же рубрики.
Смотрите также:
Покажите читателям, что вам есть о чем еще рассказать
Ели ваши посты организованы по рубрикам, то полезно составить список постов из одной рубрики. При этом не всегда вкладка "Похожие записи" является оптимальным решением.
Если у вас на сайте рубрики постов тематически различаются, то связанные тегами посты из разных рубрик могут вносить путаницу, отображаясь в едином списке.
Куда правильнее отображать список релевантных постов в одной колонке или в одном блоке под опубликованной частью контента.
Создаем список "Похожие записи"
Как вы уже наверняка догадались, перечень самых свежих постов в рамках одной выбранной рубрики будет намного проще организовать, чем выборку по тегам. Нам просто надо выбрать рубрику для конкретного поста и указать число постов в рамках выбранной рубрики, исключив из выборки тот пост, который в настоящий момент читает посетитель нашего сайта. Всё, что нам надо, — это передать значения аргументов для функции get_posts().
<?php // "More from This Category" list by Barış Ünver @ Wptuts+ function wptuts_more_from_cat( $title = "More From This Category:" ) { global $post; // We should get the first category of the post $categories = get_the_category( $post->ID ); $first_cat = $categories[0]->cat_ID; // Let's start the $output by displaying the title and opening the <ul> $output = '<div id="more-from-cat"><h3>' . $title . '</h3>'; // The arguments of the post list! $args = array( // It should be in the first category of our post: 'category__in' => array( $first_cat ), // Our post should NOT be in the list: 'post__not_in' => array( $post->ID ), // ...And it should fetch 5 posts - you can change this number if you like: 'posts_per_page' => 5 ); // The get_posts() function $posts = get_posts( $args ); if( $posts ) { $output .= '<ul>'; // Let's start the loop! foreach( $posts as $post ) { setup_postdata( $post ); $post_title = get_the_title(); $permalink = get_permalink(); $output .= '<li><a href="' . $permalink . '" title="' . esc_attr( $post_title ) . '">' . $post_title . '</a></li>'; } $output .= '</ul>'; } else { // If there are no posts, we should return something, too! $output .= '<p>Sorry, this category has just one post and you just read it!</p>'; } // Let's close the <div> and return the $output: $output .= '</div>'; return $output; } ?>
Вот и всё! Вы можете включить эту функцию в состав файла functions.php (или сохранить в качестве отдельного плагина) и сделать вызов для этой функции с помощью
<?php echo wptuts_more_from_cat( 'Похожие записи:' ); ?>
в любой части сайта, где нам надо вставить блок связанных постов в рамках файла single.php.
Заключение
Да, контент рулит, но если каждый пост "гуляет сам по себе", то перспективность его весьма сомнительна, А вот связанный с контентом список постов и ссылок позволит обогатить страницу и предложит вашим читателям что-то стоящее.
А вы собираетесь добавлять связанные посты и тематики на страницы своего блога к опубликованным постам? Если да — обязательно поделитесь своим опытом в комментариях!
Комментарии к записи: 6
А пример не привели :(
использую готовый плагин: Yet Another Related Posts Plugin
выглядит так как в приложении ( или тут: http://morikoff.ru )
О, Aville, спасибо за плагин. Поставила-суперрр!
как бывает очень СПАСИБО за добрые слова :)
Очень не плохо =)
а как сделать, чтобы в записях одних рубрик показывались похожие посты, а в других — нет?
exclude использовать, насколько я понимаю, или нет?