【Advanced Custom fields】ユーザーフィールドを使ってユーザー情報を呼びだす【WordPress】
Advanced Custom fields(以下、ACFとします。)のカスタムフィールドを使ってデータベースのようなものを作ってる時に、入力者情報を投稿作成者とは別で設定したいなと思いました。
なのでACFに用意されている「ユーザーフィールド」を使ってみる事に。
登録したユーザーの情報を呼びだすのに便利なフィールドです。
ユーザーフィールドの設定方法
「ユーザーフィールド」はフィールドタイプの中にある「ユーザー」を選択すれば設定できます。
フィールドで設定できる項目は少ないですが、便利なものが揃っています。
ロールでフィルタする
「ロールでフィルタする」のところでは、権限で参照するユーザーを絞り込むことができます。
ユーザー管理と連携できるのでとても助かる機能です。
返り値のフォーマット
このフィールドで選択したユーザーの情報をどのように返すかを決めます。
User Array
ユーザーの登録時に入力した内容を呼び出せるようにします。
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?php ["ID"] ["user_firstname"] => "名" ["user_lastname"] => "姓" ["nickname"] => "ニックネーム" ["user_nicename"] => "著者アーカイブのURL名" ["display_name"] => "ブログ上の表示名" ["user_email"] => "メールアドレス" ["user_url"] => "プロフィールのサイト項目で入力されたURL" ["user_registered"] => "ユーザー作成日時" ["user_description"] => "プロフィール情報" ["user_avatar"] => "プロフィール写真のimgタグ" ?> |
呼び題したいユーザー情報は、ほぼこれで呼び出すことができる印象です。
User Object
User Objectの場合はさらに細かい情報を呼びだすことができます。
公式のドキュメンテーションによると、WP_Userというワードプレスでのユーザー設定情報を返してくれるようです。
呼び出せる内容を書こうかとも思いましたが、ちょっと情報量が多いので・・・
User Arrayで呼び出せる情報に加え、権限や権限設定の内容といったものも返してくれるみたいですね。
詳しくはリファレンスのWP_userをご覧いただければと思います。
ざっくりとだと、バズ部さんのページが見やすかったです。
フロントエンドで細かいユーザーページを作るのには重宝しそうです。
get_fieldで呼び出す
呼び出し方は他のフィールドと同じくget_fieldというACFの関数を使います。
前述した配列のパラメーターを使用して呼び出す情報を決めます。
1 2 3 | <?php get_field('フィールドキー')['パラメーター']; ?> |
呼び出すユーザーデータは固定されているので、get_field()の第2引数のIDは不要です。
ちなみに、「複数の値を選択できるか?」をONにした場合はforeachでループを作ることで表示されます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php //フィールドの返り値を変数に格納 $users = get_field('フィールドキー'); //入力確認 if( $users ) : ?> <div> <?php foreach( $users as $user ) : ?> <img src="<?php echo get_avatar( $user->ID ); ?>" /><!--アバター画像の取得--> <p>ハンドルネーム:<?php echo $user->nickname; ?></p> <p>メール:<?php echo $user->user_email; ?></p> <?php endforeach; ?> </div> <?php endif; ?> |
・・・試しのコードとはいえ、なんだか古めかしさを感じる・・・笑
複数のユーザー情報を表示する場合は便利です。
例えば、ブログ編集者一覧とかを作るのには良さそう。
ユーザー情報の呼び出しが簡単に
ACFのユーザーフィールドを使えば、ユーザーの情報をIDのしていなく引き出すことができます。
情報を呼びだすユーザーが決まっていればかなり便利な機能ですね。
が、ユーザーが変動する場合やカスタムフィールドでユーザー情報を追加した場合には、ちょっと使いづらいですね。
その場合はどうしてもIDが必要です。
次回はそこら辺について書こうと思います。
WordPress初心者~中級者の方にオススメの本!
初心者と言ってもある程度WordPressでブログなどを作成した方にオススメです。
基本的なことから、「あれ何だっけ?」と忘れがちな事が良くまとめられています。
コードとプラグインの利用を平行させたWordPressの制作をする際に横に置いておきたい本です。
前の記事
【Advanced Custom fields】記事の投稿時に、カスタムフィールドの値を投稿済のフィールドから取得し更新する【WordPress】
次の記事
【WordPress】ユーザー情報を充実させて呼び出す【Advanced Custom fields】
こちらも読まれています
お問い合せ
この記事の内容や当社についてのお問い合わせはこちらのフォームをご覧下さい。
ご利用前に当社のプライバシーポリシーと免責事項をお読み下さい。
送信ボタンを押された時点で、当社プライバシーポリシー又は、免責事項にご同意頂いたものとみなします。