我正在保存wordpress用户,如下所示:
public void logoutTime() throws Exception {
Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
@Override
public void run() {
SimpleDateFormat sdf1 = new SimpleDateFormat("HH:mm:ss");
String time = String.format(sdf1.format(calendar.getTime()));
Globals.globalClockBean.setLogout_time(time);
try {
cd.insert(Globals.globalClockBean);
} catch (Exception ex) {
Logger.getLogger(ClockController.class.getName()).log(Level.SEVERE, null, ex);
}
System.out.println("Closing: Logged out at yayyyyyyyyy: " + time);
System.out.println(sdf1.format(calendar.getTime()));
}
}));
目前我正在使用'WP_User_Query'方法,其中包含以下参数:
$user_data = array(
'ID' => '',
'user_pass' => '',
'user_login' => $user_name,
'user_email' => $trainer_email,
'first_name' => $first_name,
'last_name' => $last_name,
'role' => 'trainer'
);
$random_password = wp_generate_password(8,false);
$user_id = wp_insert_user( $user_data );
update_user_meta( $user_id, 'course_registered',$course_registered );
wp_set_password($random_password, $user_id);
我想通过'用户名'或meta_key'course_registered'来搜索用户,否则两者都是。我试过上面的&也搜索了许多,但没有任何一个工作。有谁可以请帮助我..!
答案 0 :(得分:0)
请尝试双向,因为我不确定是否正确。
$args = array(
'role' => 'trainer',
'orderby' => 'display_name',
'posts_per_page' => '3',
'paged' => $paged,
'search' => '*'.$trainer_name.'*',
'search_columns' => array( 'user_login'),
'count_total' => true,
'number' => 5,
'meta_query' => array(
'relation' => 'OR',
array(
'key' => 'course_registered',
'value' => $course_name,
'compare' => 'LIKE'
)
)
);
$wp_user_query = new WP_User_Query($args);
这里只是添加'关系' => ' OR'在元查询中
或强>
使用 get_users 方法代替 WP_User_Query
我已经实现了这种类型的搜索,但在这种情况下我不确定所以请一个接一个地尝试。