正文:
使用 WordPress 获取今天、昨天、本周、本月注册用户统计时遇到一个问题,即日期是以协调世界时(UTC)表示的。那么如何将其转换为东八区时间(UTC+8)后再进行统计呢?
可以使用 CONVERT_TZ(`user_registered`,’+00:00′,’+08:00′) 函数来实现转换。
代码如下:
add_action('wp_dashboard_setup', 'erphp_user_total_dashboard_widgets' );
function erphp_user_total_dashboard_widgets() {
if(current_user_can('administrator')){
add_meta_box( 'erphp_user_total_widget', '注册统计', 'erphp_user_total_widget_function','dashboard', 'normal', 'core' );
}
}
function erphp_user_total_widget_function(){
global $wpdb;
$today_user = $wpdb->get_row("SELECT count(ID) as ct FROM $wpdb->users WHERE TO_DAYS(NOW())- TO_DAYS(CONVERT_TZ(`user_registered`,'+00:00','+08:00')) = 0");
$yestoday_user = $wpdb->get_row("SELECT count(ID) as ct FROM $wpdb->users WHERE TO_DAYS(NOW())- TO_DAYS(CONVERT_TZ(`user_registered`,'+00:00','+08:00')) = 1");
$week_user = $wpdb->get_row("SELECT count(ID) as ct FROM $wpdb->users WHERE YEARWEEK(date_format(CONVERT_TZ(`user_registered`,'+00:00','+08:00'),'%Y-%m-%d')) = YEARWEEK(now())");
$month_user = $wpdb->get_row("SELECT count(ID) as ct FROM $wpdb->users WHERE DATE_FORMAT( CONVERT_TZ(`user_registered`,'+00:00','+08:00'), '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )");
echo '<div class="activity-block"><ul style="margin:0 -10px;overflow:hidden">';
echo '<li style="margin:0 10px 10px;float:left;width:calc(50% - 20px);border:1px solid #f0f0f1;padding:10px;box-sizing:border-box">
<div style="font-size:19px;margin-bottom:20px;">今日注册</div>
<div><a style="font-size:16px" href="'.admin_url('users.php').'">'.($today_user?$today_user->ct:'0').' 用户</a></div>
</li>';
echo '<li style="margin:0 10px 10px;float:left;width:calc(50% - 20px);border:1px solid #f0f0f1;padding:10px;box-sizing:border-box">
<div style="font-size:19px;margin-bottom:20px;">昨日注册</div>
<div><a style="font-size:16px" href="'.admin_url('users.php').'">'.($yestoday_user?$yestoday_user->ct:'0').' 用户</a></div>
</li>';
echo '<li style="margin:0 10px 10px;float:left;width:calc(50% - 20px);border:1px solid #f0f0f1;padding:10px;box-sizing:border-box">
<div style="font-size:19px;margin-bottom:20px;">本周注册</div>
<div><a style="font-size:16px" href="'.admin_url('users.php').'">'.($week_user?$week_user->ct:'0').' 用户</a></div>
</li>';
echo '<li style="margin:0 10px 10px;float:left;width:calc(50% - 20px);border:1px solid #f0f0f1;padding:10px;box-sizing:border-box">
<div style="font-size:19px;margin-bottom:20px;">本月注册</div>
<div><a style="font-size:16px" href="'.admin_url('users.php').'">'.($month_user?$month_user->ct:'0').' 用户</a></div>
</li>';
echo '</ul></div>';
}
转载请注明:汇站网 » 获取WordPress网站的今天、昨天、本周和本月的注册用户统计
汇站网 WordPress教程 获取WordPress网站的今天、昨天、本周和本月的注册用户统计 https://www.huizhanii.com/33167.html


常见问题
相关文章
猜你喜欢
- WordPress禁用自动生成缩略图和多尺寸图片的方法(经过亲测可行) 2023-09-27
- WordPress网站速度优化技巧(珍藏代码版)让您的网站速度提升100% 2023-09-27
- 在WordPress中添加复制版权提示 2023-09-24
- 解决 WordPress 启用 CDN 后无法获取用户真实 IP 的方法 2023-09-24
- 解决 Windows 无法使用代理的问题的可能方法 2023-09-24
- WordPress利用jQuery代码绕过防盗链限制 2023-09-23
- WordPress 如何改变JPEG图片的压缩质量 2023-09-22
- 禁止WordPress订阅用户登陆后访问后台和跳转到指定页面 2023-09-22
- 纯代码自动为WordPress文章添加已使用过的标签 2023-09-21
- 纯代码生成WordPress网站地图使用XML格式创建一个sitemap.xml 2023-09-21