Update ACF Options Page Fields
wp_update_acf_optionsUpdate one or more fields on an ACF Options page via the WordPress REST API. Only specified fields are changed, enabling safe incremental edits without affecting omitted data.
Instructions
Write one or more fields to an ACF Options page on arsnovasingers.org.
Requires the "ACF to REST API" plugin (airesvsg) to be installed and active. Posts to /wp-json/acf/v3/options/{option_page} with body { fields: {...} }.
ONLY the field names you include in 'fields' are modified — omitted fields are untouched. This is safe for incremental edits to the footer, alert bar, etc., without needing to re-send the entire Options page.
For repeater fields (e.g. footer_sponsors, alert_bar), you must send the COMPLETE new array — repeaters are replaced wholesale, not merged. Read first with wp_get_acf_options to get the current array, modify it locally, then send back.
Args:
option_page (string): Options page slug. Default 'options'.
fields (object): { field_name: new_value, ... }. Values: strings (HTML for WYSIWYG, plain text), numbers, booleans, arrays (full replacement for repeaters), or nested objects (for groups).
response_format (enum): markdown | json. Default 'markdown'.
Returns: Result of the write including the updated fields and any plugin-returned metadata.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fields | Yes | Object of field_name -> new_value pairs. Values can be strings (HTML for WYSIWYG/text fields), numbers, booleans, arrays (for repeaters), or nested objects (for groups). Only the fields you include are changed; omitted fields are untouched. Example: { "column_copy_2": "<p><a href='/x'>X</a></p>" } | |
| option_page | No | ACF Options page slug. Default 'options'. Only [a-zA-Z0-9_-] allowed. | options |
| response_format | No | Output format: 'markdown' for human-readable, 'json' for machine-readable. | markdown |