【WordPress】Advanced Custom FieldsでGroup内のサブフィールドを取得するシンプルな方法

【WordPress】Advanced Custom FieldsでGroup内のサブフィールドを取得するシンプルな方法 Web・副業・パソコン

プラグイン「Advanced Custom Fields」

カスタムフィールドを使っている人にとっては必須のプラグイン「Advanced Custom Fields(ACF)」ですが、その使い方のひとつのメモ。

通常の取得方法

// カスタムフィールド名「cf」の値を取得する場合
$sample01 = get_field('cf');

で簡単に取得できますが、フィールドタイプを「Group(グループフィールド)」にすると、サブフィールド(子フィールド)をその配下に作ることができます。

Group内のサブフィールドの取得方法

※この記事でご紹介しているのは有料アドオンの繰り返しフィールドのことではありません。無料版で使えるフィールドタイプ「Group」についてです。

以下の画像の場合はフィールド名「parent」をGroupにしてそのサブフィールドとしてフィールド名「child」がある状態です。

Advanced Custom Filedsの管理画面
Advanced Custom Filedsの管理画面

この状態で「child」に入力された値を取得したい場合は、以下のようにサブフィールドを[]で後ろにつけてget_fieldすればOKです。

// 親フィールド「parent」のサブフィールド「child」の値を取得したい場合①
$child = get_field('parent')['child'];

または

// 親フィールド「parent」のサブフィールド「child」の値を取得したい場合②
$parent = get_field('parent'); // 親フィールドを一旦変数に入れる
$child = $parent['child'];

といった書き方ができます。

まとめ

Groupではもっと複雑な処理を行うことができますが、今回は記事のタイトルにもあるようにサブフィールドの値を取るためだけのシンプルな方法をご紹介しました。

コメント

タイトルとURLをコピーしました