wordpress统计每天注册和登录用户

文章描述:

WordPress如何在后台仪表盘统计每天注册和登录的用户数量呢?

新增模块

在主题模板functions.php里面自定义模块、模块内容、加载模块:

自定义模块

function guihet_add_dashboard_widgets() {
    wp_add_dashboard_widget('custom_help_widget', '自定义信息', 'custom_dashboard_guihet');
}

 

加载模块

add_action('wp_dashboard_setup', 'guihet_add_dashboard_widgets' );

 

模块内容

function custom_dashboard_guihet() {

}

统计注册

统计注册用户数量会查询wp_user表,代码如下:

global $wpdb;
$todate = date("Y-m-d");
$sql = "SELECT COUNT(*) AS num FROM `".$wpdb->prefix."users`  WHERE SUBSTRING(`user_registered`,1,10)='" . $todate . "'";
$results = $wpdb->get_results($sql);
echo '<ul>';
echo '<li>今日注册用户数:'.$results[0]->num.'</li>';
echo '</ul>';

 

登录

新增登录时间记录字段

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');

 

统计每天登录用户会查询wp_usermeta数据表,把以下代码加到模块内容里面,代码如下:

$querystr = "SELECT count(*) as num FROM `".$wpdb->prefix."usermeta` WHERE `meta_key`='last_login' AND SUBSTRING(`meta_value`,1,10)='" . $todate . "'";
$results = $wpdb->get_results($querystr);
echo  '今日登陆用户数:'.$results[0]->num;

 

发布时间:2021/06/21

发表评论