Php wordpress中的用户过滤器
我使用元查询过滤用户,但它不过滤。我得到一个空结果,里面有带“abc”的电子邮件ID。不知道哪里出错。您可以使用以下代码进行自定义查询:Php wordpress中的用户过滤器,php,wordpress,Php,Wordpress,我使用元查询过滤用户,但它不过滤。我得到一个空结果,里面有带“abc”的电子邮件ID。不知道哪里出错。您可以使用以下代码进行自定义查询: $args = array( 'role' => 'customer', 'meta_query' =>array( array( 'key' => 'email', 'value' =&g
$args = array(
'role' => 'customer',
'meta_query' =>array(
array(
'key' => 'email',
'value' => 'abc',
'compare' => 'LIKE'
)
)
);
$customers = get_users($args);
试试这个:
元查询-通过WP\u元查询对象处理的数组。参考:-
使用meta\u compare
而不是compare
。这样做:-$args=array('role'=>'customer','meta_query'=>array('key'=>'email','value'=>'abc','meta_compare'=>'like')代码>@YO-YO,请检查我的答案。@AlivetoDie试过了,没有work@YoYo您使用的WordPress版本是什么?@YOYO,我们假设您的meta_key='email'和meta_value='abc'在wp_usermeta表中?@YOYO我已经测试了上述代码,它对我来说运行良好。
<?php
$args = array(
'role' => 'customer',
'meta_query' => array(
array(
'key' => 'email',
'value' => 'abc',
'meta_compare' => 'LIKE',
)
),
);
$my_user_query = new WP_User_Query($args);
$editors = $my_user_query->get_results();
if ( ! empty( $editors ) ) {
echo '<ul class="editors-list">';
foreach ( $editors as $editor ) {
$editor_info = get_userdata( $editor->ID );
echo '<li>' . $editor_info->display_name . '</li>';
}
echo '</ul>';
} else {
echo __( 'No editors found!', 'wordpress' );
}
$meta_query_args = array(
'key' => 'email',
'value' => 'abc',
'compare' => 'LIKE'
);
$meta_query = new WP_Meta_Query( $meta_query_args );
$args = array(
'role' => 'customer',
'meta_query' =>array($meta_query )
);
$customers = get_users($args);