Как вывести популярные статьи в сайдбар на Вордпресс

Автор:
26 Ноябрь, 2015

Сегодня расскажу вам как просто и без нервов вывести популярные статьи вашего блога в сайдбар на Вордпресс. Существуют несколько способов осуществить это, как с помощью плагинов, так и без.

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

Зачем это нужно?

Анализируя посещаемость с помощью счетчика Openstat я заметил, что у меня на блоге показатель отказов превышает все допустимые нормы.

Как видите, он составляет в среднем 63%, это очень большой процент отказов, хотя средняя продолжительность визитов  больше пяти минут. Давайте теперь вкратце разберемся что означает высокий показатель отказов. Если пользователь,не успев перейти на какую-либо страницу вашего ресурса, тут же закрывает ее, то это отказ.

Если даже он провел на странице 10-20 минут, но при этом не осуществил переход по ссылке и не прочитал вторую статью на блоге, то поисковые системы все равно расценивают это как отказ. Данные Openstat подтверждает и статистика Liveinternet.

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

Вся беда в том, что он не нажал ни на одну ссылку, ведущую на другую статью. Потому ПС и расценивают такое поведение читателя как отказ, т.е. время, проведенное на сайте, как 0:00. И с моей точки зрения, это издержки пресловутого поведенческого фактора. Но как с этим бороться?

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

Выводим популярные статьи в сайдбар

Сразу скажу, что список популярных записей будет сформирован по количеству комментариев к статье.Чем больше комментариев, тем выше место в списке. Теперь скопируйте данный код и разместите в файле functions.php перед закрывающим тегом <? :

# Displays a list of popular posts
function sky_popular_posts ($num) {
global $wpdb;
$querystr = «SELECT $wpdb->posts.post_title, $wpdb->posts.comment_count, $wpdb->posts.ID FROM $wpdb->posts WHERE $wpdb->posts.post_status = ‘publish’ AND $wpdb->posts.post_type = ‘post’ ORDER BY $wpdb->posts.comment_count DESC LIMIT $num»;
$popposts = $wpdb->get_results ($querystr, OBJECT);
if (count ($popposts)>0) {
$count = 0;
foreach ($popposts as $post) {
$count++;
$class = ‘item’;
if ($count==$num) $class = ‘last’;
?><li><a href=»<?php echo get_permalink ($post->ID); ?>»><?php echo $post->post_title; ?></a></li><?php
}
}
}

Что делать, если нет закрывающего тега ( ?>) ? Как выйти из этого положения, читайте здесь. Затем в файл sidebar.php нужно добавить еше один небольшой фрагмент кода:

<ul>
<?php sky_popular_posts (4); ?>
</ul>

Цифру в скобках (4) можно менять в зависимости от того, сколько ссылок на популярные статьи хотите вывести. Честно говоря, реализация через sidebar.php мне не понравилась: нарушилось единообразие сайдбара, его общая гармония. Поэтому данный код я разместил с помощью виджета «Текст».

Просто нужно перетащить виджет «Текст» в район сайдбара, в графе заголовок прописать название, например, «Популярные статьи» и в поле чуть ниже вставить код. Если это не сработает, значит ваши виджеты не поддерживают php. Исправить это недоразумение можно довольно легко. Просто скопируйте еще один код и вставьте в файл functions.php перед закрывающим тегом ?>:

//Php в виджете
add_filter (‘widget_text’,’sp_widget_execute_php’,100);
function sp_widget_execute_php ($text) {
if (strpos ($text,».$text);
$text = ob_get_contents ();
ob_end_clean ();
}
return $text;
}

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

Как вывести свежие записи в сайдбар

Тут мне и напрягаться не пришлось, потому что в моей теме уже изначально был предусмотрен готовый виджет «Свежие записи». Возможно, у вас тоже есть. Если это так, то просто перетащите виджет в область сайдбара, заполните заголовок, укажите количество выводимых записей и сохраните.

Дело сделано. На этом у меня все, если статья была полезна вам, подписывайтесь на обновления блога. Всего доброго.

Автор статьи — Баяс Батуев

Читайте также:


Комментарии:

Комментарии