我想要一个显示每个用户登录到 Wordpress 的次数的查询。结果将是这样的:
User | Login_count
------------------
user1 | 2
------------------
user2 | 5
------------------
user3 | 0
ETC..
有任何想法吗?
这应该可以帮助您入门:
add_action('wp_login', 'db_increment');
function db_increment($login)
{
....
}
最好使用update_user_meta
创建单独的 SQL 查询来实现这样一个简单的功能。
代码(functions.php)看起来像:
function my_handle_login($username, $user) {
$login_count = intval(get_user_meta($user->ID, 'user_count', true));
$login_count++;
update_user_meta($user->ID, 'user_count', $login_count);
}
add_action('wp_login', 'my_handle_login', 10, 2);
function new_modify_user_table( $column ) {
$column['counter'] = 'Logins Count';
return $column;
}
add_filter( 'manage_users_columns', 'new_modify_user_table' );
function new_modify_user_table_row( $val, $column_name, $user_id ) {
$user = get_userdata( $user_id );
switch ($column_name) {
case 'counter' :
return get_the_author_meta( 'user_count', $user_id );
break;
default:
}
return $return;
}
add_filter( 'manage_users_custom_column', 'new_modify_user_table_row', 10, 3 );