WordPress网站怎么统计常用信息?随着网站内容增多,作为管理员我们需要一个简洁的面板来查看网站的信息。比如文章数量、评论数量、用户数量、今日注册用户数量、今日登录用户数量等等。虽然很多统计信息wordpress都已经提供了,但其分布过于分散,不方便查看,所以本文提供一种方式,将这些信息全部添加到仪表盘中。
添加仪表盘面板
这个以前已经讲过了,不懂的看这篇文章。WordPress仪表盘调用站外文章列表实现代码
获取统计信息
关于统计信息以前也发布过相关文章,本文主要补充前面没写到的内容,需要更多统计信息,请查看:WordPress网站统计相关函数大全
获取今日注册用户数量
复制
global $wpdb; $todate = date("Y-m-d"); $sql = "SELECT COUNT(*) AS num FROM `wp_users` WHERE SUBSTRING(`user_registered`,1,10)='" . $todate . "'"; $results = $wpdb->get_results($sql); echo $results[0]->num;
wp_users是你的用户数据表
获取今日登录用户数量
要获得今日登录用户数量,需要先添加一个字段用来存储用户登录的时间,或者用其他办法也可以,这里从简。
添加上次登录字段
复制
add_filter('user_contactmethods', 'dmd_add_contact_fields'); function dmd_add_contact_fields($contactmethods) { $contactmethods['last_login'] = '上次登录'; return $contactmethods; }
自动记录登录时间
复制
function insert_last_login($login) { global $user_id; $user = get_userdatabylogin($login); update_user_meta($user->ID, 'last_login', current_time('mysql')); } add_action('wp_login', 'insert_last_login');
获取今日登录用户数量
复制
global $wpdb; $todate = date("Y-m-d"); $querystr = "SELECT count(*) as num FROM `wp_usermeta` WHERE `meta_key`='last_login' AND SUBSTRING(`meta_value`,1,10)='" . $todate . "'"; $results = $wpdb->get_results($querystr); echo $results[0]->num;
获取阅读总数
由于不同主题的浏览阅读存储字段名不一致,所以需要自行修改,以下代码适用于DUX、DMD。
复制
global $wpdb; $sql = "SELECT SUM(`meta_value`) as num FROM `wp_postmeta` WHERE `meta_key`='views'"; $results = $wpdb->get_results($sql); echo $results[0]->num;
wp_postmeta的表前缀不一样的也要改,views是存储字段名。
获取点赞总数
由于不同主题的点赞存储字段名不一致,所以需要自行修改,以下代码适用于DUX、DMD。
复制
global $wpdb; $sql = "SELECT SUM(`meta_value`) as num FROM `wp_postmeta` WHERE `meta_key`='like'"; $results = $wpdb->get_results($sql); echo $results[0]->num;
wp_postmeta的表前缀不一样的也要改,like是存储字段名。
差不多就这样了,有需要留言我再添加。
评论 (1)