WordPress通过元数据获取用户

我如何检索在我的WordPress博客注册的所有用户具有特定的元数据?

例如,我已经为每个注册用户添加了一个自定义的元数据,这个用户的meta key为parent_id 。 如果我想列出parent_id2所有用户,那我该怎么做?

自WP v3.1起,通过他/她的元键来search用户是非常容易的。

使用该function

get_users($参数)

( WP文档 )

该函数需要一个参数数组,在你需要的情况下

get_users(array('meta_key'=>'parent_id','meta_value'=>'42'))

如何通过元数据获取一个用户的简单方法是:

 $user = reset( get_users( array( 'meta_key' => $meta_key, 'meta_value' => $meta_value, 'number' => 1, 'count_total' => false ) ) ); 

这里是Wordpress的codex页面,详细介绍如何使用get_users($arg); function。

它包含了如何构build自定义函数来获取用户数据的各个部分的示例。 您必须自然地构build并做出一些自己的更改以获得您想要的结果。

另外这里是一个链接到一个人build立的function,将获取基于WordPress内的angular色的用户数据。 你可以用许多不同的方式configuration它,但是这可以让你以更强大的方式过滤你的结果。

以下是您如何根据自定义angular色和多个元数据键获取用户,

 $available_drivers = get_users( array( 'role' => 'driver', 'meta_query' => array( array( 'key' => 'approved', 'value' => true, 'compare' => '==' ), array( 'key' => 'available', 'value' => true, 'compare' => '==' ) ) ) ); 

解释上面的查询,我只想要那些分配了驱动angular色的用户,他们被批准并可用。 批准和可用是使用ACF作为True / False字段创build的自定义字段。

如果您有其他要testing的元数据,请将其他数组元素添加到meta_query数组中。

同时检查我的开源在github.com/patrickingle