Блок самых популярных записей в сайдбаре сайта на WordPress
Для размещения наиболее популярных записей на сайте используется 2 метода — установка плагина WP-PostViews и размещение кода.
[wp-pic type=»plugin» slug=»wp-postviews» layout=»large» ]
Однозначно данную задачу проще и быстрее решить через плагин WP-PostViews, однако, для тех кого волнует внутренняя оптимизация сайта, рекомендуется устанавливать дополнение вручную. Рассмотрим подробнее размещение лучших статей в сайдбаре сайта без применения плагинов.
Размещение кода для вывода популярных записей
Популярные статьи в блоге могут отбираться по двум критериям:
- количество просмотров посетителями
- количество комментариев
Для этих способов используются разные кода, рассмотрим каждый.
Популярные статьи по количеству просмотров
1. В папке с вашей темой откройте файл functions.php и вставьте код:
[php]function setPostViews($postID) {
$count_key = ‘post_views_count’;
$count = get_post_meta($postID, $count_key, true);
if($count==»){
$count = 0;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, ‘0’);
}else{
$count++;
update_post_meta($postID, $count_key, $count);
}
}
function getPostViews($postID){
$count_key = ‘post_views_count’;
$count = get_post_meta($postID, $count_key, true);
if($count==»){
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, ‘0’);
return "0";
}
return $count;
}[/php]
Данный код будет использоваться для подсчета количества просмотров статьи посетителями.
2. Добавляем счетчик количества просмотров. В файл single.php вставьте код указанный ниже:
[php]<!—?php setPostViews(get_the_ID()); ?—>[/php]
Примечание: numberposts’ => 5 — количество статей выводимых в блоке сайдбара.
В результате получаем:
Лучшие записи с миниатюрами по количеству комментариев
1. Откройте файл sidebar.php и разместите такой код:
[php]
<div class="widget popular">
<h3 class="widget-title">Популярные статьи</h3>
<ul>
<?php $posts_qty = 5; $period = 90; $interval = date(‘Y-m-d’, strtotime("-$period days")); $result = $wpdb->get_results("SELECT * FROM $wpdb->posts WHERE post_type = ‘post’ AND post_status = ‘publish’ AND post_date > ‘$interval’ ORDER BY comment_count DESC LIMIT 0 , $posts_qty");
foreach ($result as $post) : setup_postdata($post);
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> (<?php comments_number(‘0’, ‘1’, ‘%’); ?>)</li>
<?php endforeach; ?>
</ul>
</div>
[/php]
Примечание: posts_qty = 5 — количество статей, period = 90 — количество дней
При желании вы можете указать свои настройки.
2. Откройте файл style.css и добавьте стили. Для этого вставьте код:
[css].popular ul li{
line-height:16px;
display:block;
border-bottom:1px solid #ECECEC;
padding:15px 0px 20px 0px;
height:50px;
font-size:12px;
}
.popular ul li img {
width: 55px;
height: 55px;
padding: 2px;
float: left;
margin: 0 13px 0 0px;
background: #FFFFFF;
border: 1px solid #D0D0BB;
border-radius: 5px;
box-shadow: 0 0 5px #666666;
}
.popular li img:hover {
border: 1px solid #ffffff;
padding: 2px;
margin: 0 5px 0 4px;
}
[/css]
Важно: для того что бы все работало правильно, каждой статье должна быть присвоена своя миниатюра.
Получаем такой перечень лучших статей с миниатюрами
И напоследок, для проведения аналитики популярности записей в вашем блоге в панель администратора можно добавить счетчик количества просмотров статей.
Для этого в файл functinos.php добавьте такой код:
[php]function get_PostViews($post_ID){
$count_key = ‘post_views_count’;
$count = get_post_meta($post_ID, $count_key, true);
return $count;
}
function post_column_views($newcolumn){
$newcolumn[‘post_views’] = __(‘Просмотры’);
return $newcolumn;
}
function post_custom_column_views($column_name, $id){
if($column_name === ‘post_views’){
echo get_PostViews(get_the_ID());
}
}
add_filter(‘manage_posts_columns’, ‘post_column_views’);
add_action(‘manage_posts_custom_column’, ‘post_custom_column_views’,10,2);
[/php]
Таким образом, можно самостоятельно, без использования плагинов, создать блок лучших статей в сайдбаре сайта. Целесообразнее использовать именно такой метод, так как большое количество установленных плагинов плохо сказывается на работоспособности сайта в целом.
Напишите ответ
Для отправки комментария вам необходимо авторизоваться.
Ценная статья. Скопировал код, пытаюсь комментарии к каждой строке написать. Anna Вы написали, что у каждой статьи должна быть своя миниатюра, извините непонятно, а как к статьям миниатюры привязаны? В style.css .popular ul li img , а сами миниатюры и названия статей к этим миниатюрам где указывать?
Всегда было интересно, как работает сайдбар популярных записей сайта на WordPress, когда сайт или блог еще совсем молодой и пока не посещаемый. Если еще нет комментариев, то он и на сайте не отражается, или как?
Кроме статей можно просто разместить короткую запись или рекламу в боковой части блога. Для этого воспользуйтесь текстовым виджетом. Перетащите и вставьте под любой раздел, например: рубрики, календарь и др.
Vik, я думаю, виджетами пользоваться все умеют. В статье дается описание возможности добавить блок популярных статей в сайдбар без использования плагинов. Кроме всех прочих преимуществ, это делает шаблон сайта уникальным для поисковиков.