東京都府中市、九段下のWeb制作会社Maromaroのブログです

2025.10.20

# Web制作

【備忘録】ACFのグループ・繰り返しフィールドをupdate_fieldする方法【WordPress】

こんにちは
Maromaroのたかです。

WordPressの投稿にACFなどでカスタムフィールドを紐づけている場合に、
管理画面からではなく、functionsや外部ファイルからフィールドを更新したい時ってありますよね。

通常のフィールド

通常のフィールドであれば以下のように更新することが出来ます。

update_field('test_field', $value,$post_id);

しかし繰り返しフィールドやグループフィールドなどは少し勝手が違います。

グループフィールド

まずグループフィールドは連想配列を作成し、
グループフィールドの親に挿入する必要があります。

以下に例を出します。

■親フィールド
group_parent

■子フィールド
child_test01
child_test02
child_test03

上記を以下の様に配列にします。

$array = [
  "child_test01" => 'test01',
"child_test02" => 'test02',
"child_test03" => 'test03',
]

注意点としては全てのフィールドを記載するようにしてください。値は空でも良いです。
欠けると反映されないことがあります。

上記で作った配列を以下のように挿入すればOKです。

update_field('group_parent', $array,$post_id);

繰り返しフィールド

繰り返しフィールドは上記のグループをさらに配列に入れていけば良いです。

以下の様になります。

$array = 
[
[
"child_test01" => 'test01',
"child_test02" => 'test02',
"child_test01" => 'test03',
],
[
"child_test01" => 'test04',
"child_test02" => 'test05',
"child_test03" => 'test06',
],
];

グループと繰り返しはよく使うので、覚えておきたいですね。
以上、Takaでした。