WP_REST_Controller::update_additional_fields_for_object( object $data_object, WP_REST_Request $request ): true|WP_Error

In this article

Updates the values of additional fields added to a data object.

Parameters

$data_objectobjectrequired
Data model like WP_Term or WP_Post.
$requestWP_REST_Requestrequired
Full details about the request.

Return

true|WP_Error True on success, WP_Error object if a field cannot be updated.

Source

protected function update_additional_fields_for_object( $data_object, $request ) {
	$additional_fields = $this->get_additional_fields();

	foreach ( $additional_fields as $field_name => $field_options ) {
		if ( ! $field_options['update_callback'] ) {
			continue;
		}

		// Don't run the update callbacks if the data wasn't passed in the request.
		if ( ! isset( $request[ $field_name ] ) ) {
			continue;
		}

		$result = call_user_func(
			$field_options['update_callback'],
			$request[ $field_name ],
			$data_object,
			$field_name,
			$request,
			$this->get_object_type()
		);

		if ( is_wp_error( $result ) ) {
			return $result;
		}
	}

	return true;
}

Changelog

VersionDescription
4.7.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.