カスタムフィールドの値が同じユーザをカウントする@WordPress
ユーザ情報にカスタムフィールドを追加し、カスタムフィールドで同じ値を持つユーザ数をカウントする例です。
例えば、段位が存在するグループがあったとして、初段が何人、二段が何人という場合にカスタムフィールドで段位を用意し、各ユーザの段位の値から、それぞれの段位に何人いるかを出力します。
カスタムフィールドはACF(Advanced Custom Field)ではなく、日本語の解説記事はまだ多くないTypesを使っています。
<tr><th>初段</th><td> <?php $grade = get_users('meta_key=wpcf-grade&meta_value=1'); // カスタムフィールドのスラッグと値を指定 $result = count($grade); echo $result; ?> </td></tr> <tr><th>二段</th><td> <?php $grade = get_users('meta_key=wpcf-grade&meta_value=2'); // カスタムフィールドのスラッグと値を指定 $result = count($grade); echo $result; ?> </td></tr>
コードはhtmlが途中で終わってますが、ようするにテーブルで一行ごとに各段位を表示して、その人数を出力しています。
WordPressのget_users()関数を使ってユーザ情報を取得、オプションで取得したいカスタムフィールドのスラッグとその値を指定し、$gradeに代入しています。
get_users()関数で得られる返り値は配列型なのでPHPのcount()関数を使って指定したフィールドの値を持つユーザの数を取得することが出来ます。count()関数のオプションに$gradeを指定し、その結果を$resultに代入してechoしています。
以下が参考になりました。ありがとうございます。
本格ビジネスサイトを作りながら学ぶ WordPressの教科書 Ver.4.x対応版
- 作者: プライム・ストラテジー株式会社
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2015/02/21
- メディア: 大型本
- この商品を含むブログ (3件) を見る