文章描述:
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;
THE END
请登录后查看评论内容