08 Количество просмотров статьи
Источник: wp-kama
В файл function.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; }
На страницах где нужно вывести число просмотров пишем так:
<?php echo get_post_meta ($post->ID,'views',true); ?>