Title: カスタムフィールドの値で一覧を並び替えたい
Last modified: 2020年7月4日

---

# カスタムフィールドの値で一覧を並び替えたい

 *  解決済 [no23h](https://ja.wordpress.org/support/users/no23h/)
 * (@no23h)
 * [6年、 3ヶ月前](https://ja.wordpress.org/support/topic/%e3%82%ab%e3%82%b9%e3%82%bf%e3%83%a0%e3%83%95%e3%82%a3%e3%83%bc%e3%83%ab%e3%83%89%e3%81%ae%e5%80%a4%e3%81%a7%e4%b8%80%e8%a6%a7%e3%82%92%e4%b8%a6%e3%81%b3%e6%9b%bf%e3%81%88%e3%81%9f%e3%81%84/)
 * とある教育機関のサイトを作成しています。
    教員ごとにアカウントを作成し、投稿が
   可能な状態です。
 * ユーザーのプロフィールページにて、
    advanced custom fieldsで以下の項目を追加し
   ています。
 * ————————————–
    **所属学科** (フィールド名 : users_dep) セレクトタイプで所属する
   学科を選択する。
 * **職階** (フィールド名 : users_position)
    セレクトタイプで自分の職階を選択する。
   選択肢のバリューとラベルを以下のように設定。 pos01 : 教授 pos02 : 准教授 pos03:
   講師 pos04 : 助教 pos05 : 技師 pos06 : 該当無し ※上にいくほど位が高い ————————————–
 * 現状、学科ごとの固定ページを作成し、所属する教員一覧を以下のコードでループ出力
   させています。
 *     ```
         <?php
         $users    = [];
         $usersDep = get_field( 'users_dep' );
   
           if ( $usersDep ) {
             $users = get_users(
               array(
                 'meta_key'   => 'users_dep',
                 'meta_value' => $usersDep
                 'orderby'    => 'ID',
                 'order'      => 'ASC',
               )
             );
           }
         ?>
   
         <?php
         if ( $users ) {
           foreach ( $users as $user ) {
             $uid = $user->ID;
         ?>
   
         <div class="author_list">
             <!-- 顔写真の出力 -->
             <?php echo get_avatar( $uid, 300 ); ?>
             <!-- 名前の出力 -->
             <?php echo $user->display_name; ?>
             <?php
               $field = get_field_object('users_position', 'user_' . $uid);
               $value = get_field('users_position', 'user_' . $uid);
               $label = $field['choices'][ $value ];
             ?>
             <!-- 職階の出力 -->
             <?php echo $label; ?>
         </div>
   
         <?php
           }
          } else {
         ?>
         <p>該当する教員はいません。</p>
         <?php } ?>
       ```
   
 * **やりたいこと**
 * 職員一覧を職階の位順に並べたく、以下のコードに変更し、
    順番は希望通りに変更でき
   ましたが、 全学科の固定ページに同じループ内容が表示されてしまいます。
 *     ```
       <?php
         $users    = [];
         $usersDep = get_field( 'users_dep' ); // 学科のバリューを取得
         $usersPos = get_field( 'users_position' ); // 学科のバリューを取得
   
           if ( $usersDep ) { 
             $users = get_users(
               array(
                 'meta_key'   => 'users_position',
                 'meta_value' => $usersPos,
                 'orderby'    => 'meta_value',
                 'order'      => 'ASC',
               )
             );
           }
       ?>
       ```
   
 * meta_keyとmeta_valueに学科の値を入れないと、学科ページごとに振り分けられないよう
   ですが、
    職階の値も入れないと思い通りに並ばないといった状況です。
 * お詳しい方、アドバイスをいただけないでしょうか。
    よろしくお願いいたします。
    -  このトピックは[no23h](https://ja.wordpress.org/support/users/no23h/)が6年、
      3ヶ月前に変更しました。
    -  このトピックは[no23h](https://ja.wordpress.org/support/users/no23h/)が6年、
      3ヶ月前に変更しました。

2件の返信を表示中 - 1 - 2件目 (全2件中)

 *  [ishitaka](https://ja.wordpress.org/support/users/ishitaka/)
 * (@ishitaka)
 * [6年、 3ヶ月前](https://ja.wordpress.org/support/topic/%e3%82%ab%e3%82%b9%e3%82%bf%e3%83%a0%e3%83%95%e3%82%a3%e3%83%bc%e3%83%ab%e3%83%89%e3%81%ae%e5%80%a4%e3%81%a7%e4%b8%80%e8%a6%a7%e3%82%92%e4%b8%a6%e3%81%b3%e6%9b%bf%e3%81%88%e3%81%9f%e3%81%84/#post-11665351)
 * こんにちは
 * 下記のようなコードでいかがでしょう。
 *     ```
       $users = get_users( array(
       	'meta_key' => 'users_position',
       	'orderby' => 'meta_value',
       	'order' => 'ASC',
       	'meta_query' => array( array(
       		'key' => 'users_dep',
       		'value' => $usersDep,
       		'compare' => '=',
       	) ),
       ) );
       ```
   
 *  トピック投稿者 [no23h](https://ja.wordpress.org/support/users/no23h/)
 * (@no23h)
 * [6年、 3ヶ月前](https://ja.wordpress.org/support/topic/%e3%82%ab%e3%82%b9%e3%82%bf%e3%83%a0%e3%83%95%e3%82%a3%e3%83%bc%e3%83%ab%e3%83%89%e3%81%ae%e5%80%a4%e3%81%a7%e4%b8%80%e8%a6%a7%e3%82%92%e4%b8%a6%e3%81%b3%e6%9b%bf%e3%81%88%e3%81%9f%e3%81%84/#post-11665366)
 * [@ishitaka](https://ja.wordpress.org/support/users/ishitaka/) 様
 * 希望通りの出力になりました。ありがとうございます。
    ‘meta_query’で検索条件を指定
   できるということですね。 大変勉強になりました。 感謝申し上げます！

2件の返信を表示中 - 1 - 2件目 (全2件中)

 トピック「カスタムフィールドの値で一覧を並び替えたい」には新たに返信することはでき
ません。

## タグ

 * [カスタムフィールド](https://ja.wordpress.org/support/topic-tag/%e3%82%ab%e3%82%b9%e3%82%bf%e3%83%a0%e3%83%95%e3%82%a3%e3%83%bc%e3%83%ab%e3%83%89/)
 * [ループ](https://ja.wordpress.org/support/topic-tag/%e3%83%ab%e3%83%bc%e3%83%97/)

 * フォーラム: [使い方全般](https://ja.wordpress.org/support/forum/how-to-and-troubleshooting/)
 * 2件の返信
 * 2人の参加者
 * 最後の返信者: [no23h](https://ja.wordpress.org/support/users/no23h/)
 * 最後の活動: [6年、 3ヶ月前](https://ja.wordpress.org/support/topic/%e3%82%ab%e3%82%b9%e3%82%bf%e3%83%a0%e3%83%95%e3%82%a3%e3%83%bc%e3%83%ab%e3%83%89%e3%81%ae%e5%80%a4%e3%81%a7%e4%b8%80%e8%a6%a7%e3%82%92%e4%b8%a6%e3%81%b3%e6%9b%bf%e3%81%88%e3%81%9f%e3%81%84/#post-11665366)
 * 状態: 解決済

## トピック

### 人気のトピック

### 返信がないトピック

### サポート関連ではないトピック

### 解決済みのトピック

### 未解決のトピック

### すべてのトピック
