Количество просмотров - PostView
Заметки по Wordpress

Количество просмотров – PostView

Количество просмотров - PostView

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

I Способ Плагин – PostView

Если выбирать плагины для подсчета просмотров, по наибольшей простоте это wp-postviews.
Плагин WP-PostViews

Установка:

  1. Вы можете поместить его в archive.php, single.php, post.php или page.php а также CustomPostType.php.
  2. Найти например:
    <?php while (have_posts()) : the_post(); ?>
  3. И вставить данный код:
    <?php if(function_exists('the_views')) { the_views(); } ?>

II Способ Количество просмотров – PostView

Это способ ручной правки шаблона. И поможет нам в этом Kama.
Ссылка на решение от Kama

Вот функция, которую вставить в файл functions.php вашей темы (шаблона) на WordPress.
[crayon lang=”php”]/* Подсчет количества посещений страниц
———————————————————- */
add_action(‘wp_head’, ‘kama_postviews’);
function kama_postviews() {

/* ———— Настройки ————– */
$meta_key = ‘views’; // Ключ мета поля, куда будет записываться количество просмотров.
$who_count = 1; // Чьи посещения считать? 0 – Всех. 1 – Только гостей. 2 – Только зарегистрированых пользователей.
$exclude_bots = 1; // Исключить ботов, роботов, пауков и прочую нечесть :)? 0 – нет, пусть тоже считаются. 1 – да, исключить из подсчета.
/* СТОП настройкам */

global $user_ID, $post;
if(is_singular()) {
$id = (int)$post->ID;
static $post_views = false;
if($post_views) return true; // чтобы 1 раз за поток
$post_views = (int)get_post_meta($id,$meta_key, true);
$should_count = false;
switch( (int)$who_count ) {
case 0: $should_count = true;
break;
case 1:
if( (int)$user_ID == 0 )
$should_count = true;
break;
case 2:
if( (int)$user_ID > 0 )
$should_count = true;
break;
}
if( (int)$exclude_bots==1 && $should_count ){
$useragent = $_SERVER[‘HTTP_USER_AGENT’];
$notbot = “Mozilla|Opera”; //Chrome|Safari|Firefox|Netscape – все равны Mozilla
$bot = “Bot/|robot|Slurp/|yahoo”; //Яндекс иногда как Mozilla представляется
if ( !preg_match(“/$notbot/i”, $useragent) || preg_match(“!$bot!i”, $useragent) )
$should_count = false;
}

if($should_count)
if( !update_post_meta($id, $meta_key, ($post_views+1)) ) add_post_meta($id, $meta_key, 1, true);
}
return true;
}[/crayon]
а этот код вставляем где нужно вывести число просмотров:

Просмотров: <?php echo get_post_meta ($post->ID,'views',true); ?>

 

Мы достигли своего результата 2 способами, выбирайте какой вам больше нравится.

 

Новые посты

Шорткоды wordpress – добавление в HTML редактор

Гордеев Игорь

Расширенная регистрация и профиль пользователя

Гордеев Игорь

Как в RSS новости вставить картинки

Гордеев Игорь

23 комментария

Сергей 08.02.2012 / 18:42

Отличная статья. У меня есть блог на wordpress, как раз хотел на него поставить счетчик посещений, теперь я понял как это сделать благодаря данному материалу. Буду пробовать, спасибо.

Ответить