首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何获取所有用户的元数据?

如何获取所有用户的元数据?
EN

Stack Overflow用户
提问于 2019-06-18 01:11:12
回答 1查看 36关注 0票数 0

我正在建设一个网站,大约有7500名用户。我想要的是获取我所有的用户和他们的元数据,并通过我自己构建的rest api调用将其返回给我。目前,我很难返回我们所有用户的元数据,而不仅仅是单个用户的元数据。

我已经构建了自定义端点,可以成功地返回用户

代码语言:javascript
复制
add_action( 'rest_api_init', 'my_register_route' );
function my_register_route() {
    register_rest_route( 'map/v1', 'test', array(
                    'methods' => 'GET',
                    'callback' => 'custom_phrase',
                )
            );
}
function custom_phrase() {
    $users = get_users( array( 'fields' => array( 'ID' ) ) );
foreach($users as $user_id){
        return (get_user_meta ( $user_id->ID));
    }
}

我希望端点一起返回我的所有用户meta_data & user_data,而不仅仅是索引中的最后一个用户。

更新:我感觉就快到了,但是数组中的每个索引返回的都是完全相同的信息。更不用说我不知何故不能成功地获取Active_Memberships的值,在它到达我之前,它是一个数组。

代码语言:javascript
复制
function custom_phrase($request_data) {
    $parameters = $request_data->get_params();
    $state = $parameters['state'];
    $users = get_users(array(
        'meta_key' => 'active state membership', 
        'meta_value' => $state, 
    ));
    $stack = array();

    foreach($users as $user_id) {
        $user_meta = get_user_meta ($user_id -> ID);
        $obj->display_name = $user_id -> display_name;
        $obj->memberships = $user_meta -> active_memberships;
        array_push($stack, $obj);
    }
    return $stack;
}
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56635999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档