wordpress添加统计信息的实现

1、首先,需要创建相关的函数。你可以把下面的代码粘贴到你所用主题的 functions.php 文件里。

//取得文章的阅读次数开始
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;
}
//设置文字阅读次数
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);
}
}
//取得文章的阅读次数结束

2、然后,粘贴下面的代码到主题的 single.php 的文章的 loop 里:

< ?php setPostViews(get_the_ID()); ?>

3、最后,把下面的代码拷贝到任意你的主题模板里想要显示点击数的地方:

< ?php echo getPostViews(get_the_ID()); ?>

那么如何添加博客统计信息?添加站点信息有助于前台实时显示文章用户浏览等数据。添加有很多方法,比较典型的有:插件法和代码法。 很多教程统计总浏览数的时候都用了插件wp-postview,要不然就会有错误,不过能不用插件还是不用插件的好。 下面是纯代码方法,但是必须得结合统计文章的代码来实现,就是我上面介绍的。

下面给出wordpress站点统计的代码

<div class="widget status">
	<h3>博客统计</h3>
	<ul>
		<li>文章:< ?php $count_posts = wp_count_posts();echo $published_posts = $count_posts->publish;?>篇</li>
		<li>页面:< ?php $count_pages = wp_count_posts('page');echo $page_posts = $count_pages->publish;?>个</li>
		<li>分类:< ?php echo $count_categories = wp_count_terms('category');?>个</li>
		<li>标签:< ?php echo $count_tags = wp_count_terms('post_tag'); ?>个</li>
		<li>链接:< ?php $link = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->links WHERE link_visible = 'Y'"); echo $link; ?>条</li>
		<li>草稿:< ?php $count_posts = wp_count_posts(); echo $draft_posts = $count_posts->draft; ?>篇</li>
		<li>评论:< ?php $count_comments = get_comment_count();echo $count_comments['approved'];?>条</li>
		<li>用户:< ?php $users = $wpdb->get_var("SELECT COUNT(ID) FROM $wpdb->users"); echo $users; ?>人</li>
		<li>浏览:< ?php $views = $wpdb->get_var("SELECT SUM(meta_value) FROM $wpdb->postmeta WHERE meta_key='post_views_count'"); echo $views; ?>次</li>
		<li>运行:< ?php echo floor((time()-strtotime("2013-8-18"))/86400); ?>天</li>
		<li class="update">最后更新:< ?php $last = $wpdb->get_results("SELECT MAX(post_modified) AS MAX_m FROM $wpdb->posts WHERE (post_type = 'post' OR post_type = 'page') AND (post_status = 'publish' OR post_status = 'private')");$last = date('Y-m-d H:i:s', strtotime($last[0]->MAX_m));echo $last; ?></li>
	</ul>
</div>

 

注意:浏览次数项,如果你使用的是第三方插件,需要修改对应的post_views_count字段。

以上就实现了,把代码放在相应的位置,你可以需要修改样式以达到美观的效果!