让WordPress后台显示用户注册时间的方法

时间:2024年01月11日

/

来源:网络

/

编辑:佚名

默认的WordPress 后台,用户是按照用户名排序的,并且没有显示注册时间,这就很难受,看着用户列表开头一堆数字或者一堆英文头都大了,而且没办法直接看到最近有哪些用户注册了。
如果我们希望能够在后台看到用户的注册时间,并且按照注册时间排序,那该怎么做呢?
对于这两个问题,目前有两个办法可以解决:
第一种:代码版,此代码功能单一,仅显示注册时间。
使用方法:在当前主题的 functions.php 文件添加如下面的代码:
/** 让WordPress后台显示用户注册时间,并按照注册时间排序*/
add_filter('manage_users_columns', function($column_headers){
    $column_headers['registered'] = '注册时间';
    return $column_headers;
});
add_filter('manage_users_custom_column', function($value, $column_name, $user_id){
    if($column_name=='registered'){
        $user = get_userdata($user_id);
        return get_date_from_gmt($user->user_registered);
    }else{
        return $value;
    }
},11,3);
add_filter('manage_users_sortable_columns', function($sortable_columns){
    $sortable_columns['reg_time'] = 'reg_time';
    return $sortable_columns;
});
add_action('pre_user_query', function($query){
    if(!isset($_REQUEST['orderby']) || $_REQUEST['orderby']=='reg_time' ){
        if( !in_array($_REQUEST['order'],array('asc','desc')) ){
            $_REQUEST['order'] = 'desc';
        }
        $query->query_orderby = "ORDER BY user_registered ".$_REQUEST['order']."";
    }
});
全选代码复制
效果如下图
猜你需要

豫ICP备2021026617号-1  豫公网安备:41172602000185   Copyright © 2021-2028 www.78moban.com/ All Rights Reserved

本站作品均来自互联网,转载目的在于传递更多信息,并不代表本站赞同其观点和对其真实性负责。如有侵犯您的版权,请联系 1565229909#qq.com(把#改成@),我们将立即处理。