WordPress后台用户列表按注册时间排序

荆轲刺秦王

WordPress的设计不同于其他MVC模式的PHP框架,它的大部分功能是由插件来实现,所以我们在修改后台功能的时候,大部分也都是在 function.php 和 js/main.js 里面修改。

先看数据表,WordPress自带的基础数据库已经有了 User 表,并且有 registered_time 这个字段,虽然不是时间戳格式,但依旧不影响我们对他进行排序。

废话不多说,看代码:

        //WordPress order by registered_time
        add_filter( 'manage_users_columns', 'my_users_columns' );
        function my_users_columns( $columns ){
            $columns[ 'registered' ] = 'Registration time';
            return $columns;
        }
        
        add_action( 'manage_users_custom_column', 'output_my_users_columns', 10, 3 );
        function  output_my_users_columns( $var, $column_name, $user_id ){
            switch( $column_name ) {
                case "registered" :
                    return get_user_by('id', $user_id)->data->user_registered;
                break;
            }
        }
        
        add_filter( "manage_users_sortable_columns", 'wenshuo_users_sortable_columns' );
        function wenshuo_users_sortable_columns($sortable_columns){
            $sortable_columns['registered'] = 'registered';
            return $sortable_columns;
        }
        
        add_action( 'pre_user_query', 'wenshuo_users_search_order' );
        function wenshuo_users_search_order($obj){
            if(!isset($_REQUEST['orderby']) || $_REQUEST['orderby']=='registered' ){
                if( !in_array($_REQUEST['order'],array('asc','desc')) ){
                    $_REQUEST['order'] = 'desc';
                }
            $obj->query_orderby = "ORDER BY user_registered ".$_REQUEST['order']."";
            }
        }

实现的效果,是在后台用户列表页面出现了一列注册时间,因为老板喜欢看英文,所以这一列的名称是:Registration time 

然后点击 Registration time 右边的小三角可以正序,倒序排列,已经符合了我的业务需求。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值