如何以数组格式获取WordPress用户名

时间:2018-07-10 作者:Minesh

我想在WordPress中创建一个自动完成函数。我想要一个搜索字段username 可以搜索。我正在使用以下JQuery UI。

<label>Users</label>

<input type="text" name="user_name" id="user-name" />

<?php

$get_arr_user = array(\'John\', \'Rogers\', \'Paul\', \'Amanda\', \'Peter\');

?>

<script>

jQuery(document).ready(function($) {                                
var availableTags = <?php echo json_encode($get_arr_user); ?>;
$( "#user-name" ).autocomplete({
source: availableTags
});
});

</script>
我的问题是我无法获得Usernames 在此格式中-array(\'John\', \'Rogers\', \'Paul\', \'Amanda\', \'Peter\'); 我怎么才能得到呢?

3 个回复
最合适的回答,由SO网友:Jacob Peattie 整理而成

其他答案是正确的,但也有可能用更少的代码wp_list_pluck():

$users = get_users();
$user_names = wp_list_pluck( $users, \'display_name\' );
wp_list_pluck() 使用这种方式将获得display_name 数组中所有用户的字段,无需执行循环。

SO网友:cjbj

这个get_users 函数将为您提供一个用户对象数组,您可以从中提取一个用户名数组。像这样:

$args = array(); // define in case you want not all users but a selection
$users = get_users( $args );
$user_names = array();
foreach ( $users as $user ) {
    $user_names[] = $user->user_login;
}
现在$user_names 是一个具有登录名的数组。当然,你也可以使用user_nicename, last_name, 或者在wp_user 对象

SO网友:Max Yudin

看看get_users() 作用

<?php

$users = get_users();

foreach( $users as $user ) {
    // get user names from the object and add them to the array
    $get_arr_user[] = $user->display_name;
}
您将得到类似于以下内容的数组:

Array
(
    [0] => John Doe
    [1] => Jane Doe
    [2] => Baby Doe
)
我很确定你会想排除管理员、订单名等。那么,看看documentation 了解更多信息get_users() 参数。

结束

相关推荐

USERS表与USERS_METADATA表的关联似乎已中断

在将自定义主题构建部署到Go Daddy管理的WordPress安装(客户端请求,RIP)后,我注意到了一个问题,其中由WP后端中的管理员帐户创建的用户没有显示在用户列表中。它们出现在用户数据库中,但在users_metadata 表(有admin帐户的条目,但仅此而已)。users表表示没有分配主键-我不确定这是否是问题的一部分。我假设用户ID应该是主键,但很明显我不是SQL专业人士。我的客户需要能够创建用户,以便他的员工可以上传内容。我应该用什么树来解决这个问题?