ACF\AI\Abilities

AbstractAbilityGroup::execute_rest_request │ protected │ ACF 6.8.0

Execute a REST API request.

Method of the class: AbstractAbilityGroup{}

No Hooks.

Returns

array|WP_Error. Response data or error.

Usage

// protected - for code of main (parent) or child class
$result = $this->execute_rest_request( $method, $rest_base, $input, $item_id );
$method(string) (required)
HTTP method (GET, POST, PUT, DELETE).
$rest_base(string) (required)
REST API base.
$input(array)
Input parameters.
Default: array()
$item_id(int)
Optional item ID for single item operations.
Default: null

Changelog

Since 6.8.0 Introduced.

AbstractAbilityGroup::execute_rest_request() code ACF 6.8.8

protected function execute_rest_request( string $method, string $rest_base, $input = array(), $item_id = null ) {
	$endpoint = '/wp/v2/' . $rest_base;

	if ( $item_id ) {
		$endpoint .= '/' . intval( $item_id );
	}

	$request = new WP_REST_Request( $method, $endpoint );

	// Set all input parameters.
	foreach ( $input as $key => $value ) {
		// Skip the ID since it's in the URL for single item operations.
		if ( $key === 'id' && $item_id ) {
			continue;
		}
		$request->set_param( $key, $value );
	}

	$response = rest_do_request( $request );

	if ( $response->is_error() ) {
		return $response->as_error();
	}

	return $response->get_data();
}