让代码更简单

WordPress网站常用统计信息

重要:本文最后更新于2020-04-09 08:25:28,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

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是存储字段名。

差不多就这样了,有需要留言我再添加。

感觉很棒!可以赞赏支持我哟~

3 打赏

评论 (1)

登录后评论
好像很好玩的样子……
QQ咨询 邮件咨询 狗哥推荐