I’m trying to understand how to update a nested repeater field
i have a nested repeater field (link blocks, with a title and a list of links. How do I address this for update?
Link-block Repeater field
— block title (string)
— Link (new repeater field)
—— Link title (string)
—— Link URL (link)
—— Link icon (fa icon)
I get my link-block from a json feed, $d->link_block. To get the values from $d->link_block is fine, but I cannot figure out the update syntax from acf.
please advice
Here is a rough outline of what you need
$repeater = 'field_XXXXX'; // field key of repeater
$value = array(
// nested array for every row of repeater
array(
// field key => value pairs for each sub field
'field_XXXXX' => 'block title', // title field
'field_XXXXX' => array(
// nested repeater
// field key => value pairs for each sub field
'field_XXXXX' => 'link title',
'field_XXXXX' => 'link url',
'field_XXXXX' => 'link fa icon',
),
// next row in nested repeater
),
// next row in repeater
);
update_field($repeater, $value, $post_id);
Thanks you were missing an array of arrays
$repeater = 'field_62e5ba2733cea'; // field key of repeater
$value_john = array(
// nested array for every row of repeater
array(
// field key => value pairs for each sub field
'field_62e5ba3233ceb' => 'block title', // title field
'field_62e6bd4119dc1' => array(
// nested repeater
// field key => value pairs for each sub field
array(
'field_62e6bd5e19dc3' => 'link title',
'field_62e6bd6419dc4' => 'link url',
'field_62e6bd6a19dc5' => 'link fa icon',
),
array(
'field_62e6bd5e19dc3' => 'link title',
'field_62e6bd6419dc4' => 'link url',
'field_62e6bd6a19dc5' => 'link fa icon',
),
),
// next row in nested repeater
),
// next row in repeater
);