我想使用get_users()
返回具有特定meta\\u键的所有用户,但我不想指定该值必须是什么,因为它将为每个用户更改。该值是一个json字符串。这可能吗?
返回具有特定元密钥的所有用户
1 个回复
最合适的回答,由SO网友:chrisguitarguy 整理而成
您可以使用meta_key
参数,其结果将类似于使用EXISTS
sql语句。
<?php
$users = get_users(array(
\'meta_key\' => \'your_meta_key\',
));
或者,您可以使用空字符串meta_value
(默认)和>
对于meta_compare
. 结果是一样的(可能是因为meta_value
如果为空,则忽略!)。<?php
$users = get_users(array(
\'meta_key\' => \'your_meta_key\',
\'meta_value\' => \'\',
\'meta_compare\' => \'>\',
));
第一种方法在使用WP_Query
和meta_query
也我的插件示例: $links = get_posts(array(
\'post_type\' => self::POST_TYPE,
\'numberposts\' => apply_filters(\'seoal_number_links\', -1),
\'meta_query\' => array(
\'relation\' => \'AND\',
array(
\'key\' => self::get_key("type_{$post->post_type}"),
\'value\' => \'on\',
\'compare\' => \'=\'
),
array(
\'key\' => self::get_key(\'url\'),
\'compare\' => \'EXISTS\' // doesn\'t do anything, just a reminder
),
array(
\'key\' => self::get_key(\'keywords\'),
\'compare\' => \'EXISTS\' // doesn\'t do anything, just a reminder
)
),
\'suppress_filters\' => false,
));
结束