WP REST API とACF リピーター

情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。

WP REST API でAdvanced Custom Fieldsのリピーターをガッツリ表示したい場合の設定についてのメモ(PHP)

まずACFの設定、REST APIで表示をオンに

カスタム投稿タイプをCPT UIで設定している場合はREST APIに関する部分をチェック

カスタム投稿タイプの場合は、/wp-json/wp/v2/posts のposts の部分を投稿タイプ名にする。

REST API のURLに acf_format=standard を付ける。

リピーターは $repeaters = $data[“acf”][“repeater”]; のようにしてforeach、入れ子のリピーターがある場合も $subrepeaters = $repeater[“subrepeater”]; でforeach

画像フィールドを使用している場合はデータを出す方でアイキャッチの設定と同じように設定。こちら参照
戻り値がIDの場合はID設定の箇所を $acfimage_id = get_field(‘image’, $post[‘id’]); のように、
戻り値が配列の場合はさらに $img = wp_get_attachment_image_src($acfimage_id[‘id’], ‘large’); のようにする。
戻り値がURLの場合はそのまま使用できるはず。

複数ページ表示したい場合は、パラメータを取得して振り分けるようにページャーを付ける。

その他のAdvanced Custom Fields に関する記事一覧

Advanced Custom Fields に関する記事一覧ページへ