ACF(Advanced Custom Fields)でユーザー情報のカスタムフィールドに設定したセレクトボックス・チェックボックスのラベルを取得する方法

こんにちは、webエンジニアのゾノ( @ozonosho )です。

さて、今回の記事ではACF(Advanced Custom Fields)でユーザー情報のカスタムフィールドに登録されたセレクトボックス・チェックボックスの項目ラベルを取得する方法を紹介したいと思います。

カスタムフィールドの設定画面では、セレクトボックスやチェックボックスの各項目にラベル(key)と値(value)を設定することができます。

今回は、ユーザー情報に登録したカスタムフィールドの中から指定した項目のラベルを取得する関数をご紹介します。

関数はこちら

カスタムフィールド名とユーザーIDを渡せば、そのユーザーに登録されているセレクトボックスやチェックボックスで選択されている項目のラベルを取得することができます。

▽セレクトボックスで選択されている項目のラベル取得

function get_user_select_field_label($field_name, $userID) {
	$field_obj = get_field_object($field_name, 'user_' . $userID);
	$value = get_field($field_name, 'user_' . $userID);
	$label = $field_obj['choices'][$value];
	return $label;
}

▽チェックボックスで選択されている項目のラベル取得

function get_user_checkbox_field_label_list($field_name, $userID) {
	$field_obj = get_field_object($field_name, 'user_' . $userID);
	$values = get_field($field_name, 'user_' . $userID);
	$html = '
    '; foreach ($values as $value) { $label = $field_obj['choices'][$value]; $html .= '<li>' . $label . '</li>'; } $html = '
'; return $html; }

チェックボックスのほうは値が複数選択されているケースもあるため、リスト形式で返しています。

ご自身の出力したいフォーマットに合わせて適宜変更してご利用ください。

おわりに

以上、今回の記事ではACF(Advanced Custom Fields)でユーザー情報のカスタムフィールドに設定したセレクトボックス・チェックボックスのラベルを取得する方法を紹介させていただきました。

つくりばのことが気になりましたか?

つくりばは、ココトモ・未来地図を自社で10年以上運営してきた知見をもとに、相談・コミュニティの開発と運営を支援しています。いきなりのご相談でなくて大丈夫です。まずは私たちの実績や考え方をご覧ください。

つくりばについて知る

← WordPressの一覧へ戻る

Webサービスの課題を、まずは無料相談で整理しませんか。

既存サービスの改善、新規立ち上げ、運用サポート、予算内での優先順位づけなど、今の状況に合わせてじっくりお話を伺います。まだ形になっていない段階のご相談も大丈夫です。

  • videocamオンライン対応
  • forum課題整理だけでも歓迎
  • payments概算費用の目安がわかる
無料相談を申し込む