RiPro日主题美化,让注册用户按照注册时间顺序排列的教程

RiPro日主题美化,让注册用户按照注册时间顺序排列的教程

RiPro主题后台的所有注册用户是按照用户名顺序排列的,这很不方便,如果用户过多,则将不知道新注册的用户,这很麻烦,也不利于查找。因此,我试图改变它,通过一段代码即可改变它。

效果如下:单击注册时间后,可以按升序或降序对注册时间进行排序。

RiPro主题复制以下代码粘贴到主题目录下的functions.php文件尾部即可。

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

wordpress或者其他主题,后台用户界面并没有注册时间这个界面,那么也可以复制以下代码粘贴到主题目录下的functions.php文件尾部即可。

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

大功搞成,非常简单,喜欢的可以收藏本文章。