有一种比@Warface的方法更简单、更快的方法。这是对@SyHolloway的扩展
这里的概念是包装get_users() 在一个新函数中,可以对结果进行排序get_users() 由include 参数使用usort 然后返回按排序的结果数组include
此功能不提供fields 当include 参数已设置。all 是唯一有效的值。您可以扩展该函数,使其与fields 参数何时include 正在使用中。否则,如果include 未设置,则fields 参数正常工作。
当然,orderby 和order 当include 已使用
此新功能的操作和使用方式与get_users(), 除上述规定外
下面是函数
function get_users_by_include( $args = array() ) {
$blogusers = get_users( $args );
if( isset( $args[\'include\'] ) ){
$include = $args[\'include\'];
usort($blogusers, function ($a, $b) use( $include ){
$q = array_flip( $include );
return $q[$a->ID] - $q[$b->ID];
});
}
return $blogusers;
}
您现在可以在模板中使用它,如下所示
$users = get_users_by_include(array( \'include\' => array(2,5,1,10,45,32,66) ) );
foreach ( $users as $user ) {
echo $user->ID . \'</br>\';
}