Как показывать связанные статьи для поста в WordPress
Показатель отказов на сайте – это процент посетителей сайта, которые покидают ваш сайт через некоторое время, а не продолжают просматривать другие страницы вашего сайта. Это один из немаловажных показателей СЕО-продвижения и ранжирования в поисковых системах.
Одним из способов снизить показатель отказов на сайте есть показ блока связанных публикаций для данного поста. Так вы предлагаете вашим читателям не покинуть сразу сайт, а продолжить чтение других статей. Тем самым, также, достигается и увеличение количества просмотров страниц.
В этой статье мы расскажем вам, как можно легко показывать связанные публикации в WordPress без помощи плагина.
Рекомендуемые публикации в WordPress без плагина
С помощью этого кода вы будете делать выборку из базы данных постов, которые имеют такую же категорию, как и текущий пост. Создайте в папке активной темы WordPress файл-шаблон под названием loop-related-posts.php
и следующим содержанием:
<?php $orig_post = $post; global $post; $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), // здесь мы можем исключить выборку статей по их ID 'posts_per_page'=> 10, // ограничиваем количество статей для показа 'ignore_sticky_posts' => 1, 'orderby'=>'rand' // делать выборку из базы данных рандомно (случайно) ); $my_query = new wp_query( $args ); if( $my_query->have_posts() ) {?> <div class="related-posts"> <h3><?php _e('Related posts','sebweo'); ?></h3> <div class="row"> <div class="col-lg-12"> <div class="related-post-items"> <?php while( $my_query->have_posts() ) { $my_query->the_post(); ?> <div class="related-post-one"> <a itemprop="url" href="<?php the_permalink();?>" title="<?php printf('%s', the_title_attribute('echo=0')); ?>" rel="bookmark"> <?php if (has_post_thumbnail()) { $image = wp_get_attachment_image_src(get_post_thumbnail_id(), 'thumbnail'); ?> <img src="<?php echo $image[0]; ?>" alt="<?php the_title_attribute(); ?>" /> <?php } ?> </a> <div class="related-post-title"> <a itemprop="url" href="<?php the_permalink();?>" title="<?php echo esc_attr( sprintf( __( 'Permalink to %s', 'sebweo' ), the_title_attribute( 'echo=0' ) ) ); ?>" rel="bookmark"><?php the_title(); ?></a> </div> </div> <?php } ?> </div> </div> </div> </div> <?php } } $post = $orig_post; wp_reset_query(); ?>
Теперь нам нужно подключить этот шаблон в шаблоне одиночного поста. Для показа одиночного поста служит файл-шаблон single.php
в папке активной темы, например, /wp-content/themes/ТЕМА/
.
Откройте этот файл и добавьте в нужном месте подключение шаблона для связанных постов. Как правило, связанные посты добавляют в конце статьи, поэтому подключайте шаблон перед закрытием цикла:
<?php while ( have_posts() ) : the_post(); ?> <?php // контент статьи ?> <?php // подключаем блок связанных статей ?> <?php endwhile; ?>
Шаблон подключается функцией WordPress:
<?php get_template_part( $slug, $name ); ?>
где $slug
– первая часть названия, а $name
– вторая часть названия
В нашем примере, чтобы подключить шаблон loop-related-posts.php
мы должны вызвать следующее:
<?php get_template_part( 'loop', 'related-posts' ); ?>
Поэтому, кусок кода в файле single.php
будет иметь следующий вид:
<?php while ( have_posts() ) : the_post(); ?> <?php // контент статьи ?> <?php // подключаем блок связанных статей ?> <?php get_template_part( 'loop', 'related-posts' ); ?> <?php endwhile; ?>
Теперь можете смело открыть свой сайт и проверить работу этого кода.
Надеемся, что сегодняшний урок вам пригодиться!
Последние посты
Генри Форд
Человек имеет два мотива поведения — один настоящий и второй, который красиво звучит Генри Форд…
Фридрих Ницше
Не нужно додумывать слишком много. Так вы создаете проблемы, которых изначально не было Фридрих Ницше…
Такой разный инвертор! Выбираем между кондиционерами Inverter, Inverter DC и Full DC
Лето в разгаре, а значит самое время задуматься о покупке кондиционера. Но как не потеряться…
Омар Хайям
Настоящий друг — это человек, который в глаза тебе выскажет все, что о тебе думает,…
Полезные советы по выбору раздвижной двери
Следует знать, что функциональность и дизайн работают рука об руку, когда вы используете раздвижную дверь.…
View Comments
Ешкин кот, как сложно. Это все для программистов? А плагин какой то есть?
Наоборот, этот код максимально упрощает задачу. Плагины делают много лишней работы. Если вам нужен плагин, по ссылке огромный их выбор: https://wordpress.org/plugins/search/Related+Posts/