wordpress get_users不返回任何结果

时间:2014-04-03 02:30:21

标签: wordpress

get_users返回一个空数组。我检查了我的数据,密钥与数据库中的用户元字段匹配。

function upd_check_key() {

    $key = get_query_var( 'upd' );

    if( !empty( $key ) ) :

        $user = get_users( array( 'meta_key' => 'upd_key', 'meta_value' => $key ) );

        if( is_array( $user ) ):

            //Get rank and add 5 points
            $rank = get_usermeta( $user->ID, 'upd_rank' );
            $new_rank = $rank+5;
            $update_rank = update_user_meta( $user->ID, 'upd_rank', $rank );


            //Get hit and increase by one.
            $hit = get_usermeta( $user->ID, 'upd_hit' );
            $new_hit = $hit+1;
            $update_hits = update_user_meta( $user->ID, 'upd_hit', $new_hit );

            echo '<h1>***************************************************************</h1>';
            echo '<h1>USERID: '.$user->ID.'</h1>';

        endif;

    endif;


    echo '<h1>USERRANK: '.$new_rank.'</h1>';
    echo '<h1>USERHITS: '.$new_hit.'</h1>';
    echo '<h1>UERKEY: '.$key.'</h1>';
    echo var_dump( $user );

}

var_dump没有返回任何内容,所以我认为数组是空的。

1 个答案:

答案 0 :(得分:0)

2020年:get_甚至wp_get_肯定在工作时。

对于后代来访的人,请不要害怕再次尝试get_users()。这是WP_User_Query的非常可靠的单行包装器,从而避免了调用$query->get_results()的麻烦。这是一些经过验证的有效代码,它们始终按first_name过滤我的用户:

$users = get_users(array(
    'number' => -1,
    'fields' => 'all',
    'meta_key' => 'first_name',
    'meta_value' => 'Benjamin'
)));
var_dump($users);