微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

wordpress主题开发中按用户注册时间排序

我们在wordpress主题开发过程中,经常会对用户开放注册功能,比如wordpress日记网站,但是用户注册的多了,如果我们想看一下今天或某一天都注册了哪些用户,这个时候如果用户可以按照注册时间排序的话就方便了,要实现wordpress主题开发中用户按照注册时间排序,只需要将下面的代码放到您的主题的functions.PHP中就可以了。

//wordpress后台用户根据注册时间排序

//添加用户注册时间列

add_filter( 'manage_users_columns','my_users_columns' );

function my_users_columns( $columns ){

$columns[ 'registered' ] = '注册时间';

return $columns;

}

//通过manage_users_custom_column钩子返回值排序

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 "last_activity" :

return get_user_Meta($user_id,'last_activity',true);

case "registered" :

return get_user_by('id',$user_id)->data->user_registered;

case "sex" :

return get_user_Meta($user_id,'sex',true);

case "occ" :

return get_user_Meta($user_id,'occ',true);

case "qq" :

return get_user_Meta($user_id,'qq',true);

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;

}

//最后根据浏览器的url,重新设置wordpress查询函数

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']."";

}

}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐