基本的に、WordPress ユーザーのリストを、住んでいる市区町村ごとに並べ替える必要があります。市区町村のカスタム ユーザー メタ フィールドがあり、クエリは適切に機能していますが、クエリは入力していないすべての人をリストします。注文の最初に空白のフィールドを配置するため、最初に都市を除外します。
私が必要としているのは、都市フィールドに空白以外の値を指定したユーザーのみを選択して表示する方法を理解することです。残念ながら、私は自分が困惑していることに気づきました。
これを行う方法について何か考えはありますか?また、この混乱とは対照的に、wp_user_query を使用してカスタム ユーザー メタ フィールドで順序付けする方法を誰かが知っている場合、私はすべて耳にします。
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$limit = 10;
$offset = ($paged - 1) * $limit;
$key = 'city';
$sql = "SELECT SQL_CALC_FOUND_ROWS {$wpdb->users}.* FROM {$wpdb->users}
INNER JOIN {$wpdb->usermeta} wp_usermeta ON ({$wpdb->users}.ID = wp_usermeta.user_id)
INNER JOIN {$wpdb->usermeta} wp_usermeta2 ON ({$wpdb->users}.ID = wp_usermeta2.user_id)
WHERE 1=1
AND wp_usermeta.meta_key = 'wp_capabilities'
AND CAST(wp_usermeta.meta_value AS CHAR) LIKE '%\"subscriber\"%'
AND wp_usermeta2.meta_key = '$key'
ORDER BY wp_usermeta2.meta_value ASC
LIMIT $offset, $limit";
$site_users = $wpdb->get_results($sql);
$found_rows = $wpdb->get_var("SELECT FOUND_ROWS();");
foreach ($site_users as $site_user) {
// user info here
}