Refactored search query in merge_users
Showing
1 changed file
with
15 additions
and
13 deletions
| ... | @@ -994,20 +994,22 @@ class Actions { | ... | @@ -994,20 +994,22 @@ class Actions { |
| 994 | // Check for search term in first_name, last_name, user_login, and user_email, but only if user status is not 'terminated' | 994 | // Check for search term in first_name, last_name, user_login, and user_email, but only if user status is not 'terminated' |
| 995 | $query = " | 995 | $query = " |
| 996 | SELECT ID, user_email | 996 | SELECT ID, user_email |
| 997 | FROM $wpdb->users | 997 | FROM $wpdb->users AS u, $wpdb->usermeta AS uml, $wpdb->usermeta AS umf, $wpdb->usermeta AS ums |
| 998 | WHERE ( | 998 | WHERE (uml.user_id = u.ID |
| 999 | (user_login LIKE '%$username%') | 999 | AND uml.meta_key = 'last_name' |
| 1000 | OR (user_email LIKE '%$username%') | 1000 | ) |
| 1001 | OR (ID IN ( | 1001 | AND (umf.user_id = u.ID |
| 1002 | SELECT user_id | 1002 | AND umf.meta_key = 'first_name' |
| 1003 | FROM $wpdb->usermeta | 1003 | ) |
| 1004 | WHERE (meta_key = 'first_name' OR meta_key = 'last_name') | 1004 | AND (ums.user_id = u.ID |
| 1005 | AND meta_value LIKE '%$username%' | 1005 | AND ums.meta_key = 'status' |
| 1006 | ))) | 1006 | ) |
| 1007 | AND (ID NOT IN ( | 1007 | AND ((uml.meta_value LIKE '%$username%' |
| 1008 | SELECT user_id FROM $wpdb->usermeta WHERE meta_key = 'status' AND meta_value = 'terminated' | 1008 | OR umf.meta_value LIKE '%$username%') |
| 1009 | )) | 1009 | AND ums.meta_value != 'terminated' |
| 1010 | ) | ||
| 1010 | ORDER BY user_email"; | 1011 | ORDER BY user_email"; |
| 1012 | |||
| 1011 | $result = $wpdb->get_results($query, ARRAY_A); | 1013 | $result = $wpdb->get_results($query, ARRAY_A); |
| 1012 | 1014 | ||
| 1013 | if (! empty($result)) { | 1015 | if (! empty($result)) { | ... | ... |
-
Please register or sign in to post a comment