ログイン中のユーザーと同じタクソノミーを持つユーザー一覧を取得するための覚書です。
あらかじめユーザーとカスタムタクソノミーを紐付けるのには「LH User Taxonomies」を利用しています。
ex.areaというカスタムタクソノミーをユーザーと紐付けている場合。
$owner_ids = array(); $user = wp_get_current_user(); $user_id = $user->get('id'); $cur_terms = wp_get_object_terms( $user_id, 'area' ); $cur_terms_array = array(); if ( ! empty( $cur_terms ) ) { if ( ! is_wp_error( $cur_terms ) ) { foreach( $cur_terms as $term ) { $cur_terms_array[] = $term->slug; } } } $owner_lists =get_users( array( 'orderby' => 'ID', 'order' => 'ASC' ) ); foreach($owner_lists as $owner): $oid = $owner->ID; $owner_terms = wp_get_object_terms( $oid, 'area' ); if ( ! empty( $owner_terms ) ) { if ( ! is_wp_error( $owner_terms ) ) { foreach( $owner_terms as $term ) { if (in_array($term->slug,$cur_terms_array)) { $owner_ids[] = $oid; } } } } endforeach; return $owner_ids;