WP_REST_Response::as_error()publicWP 4.4.0

Retrieves a WP_Error object from the response.

Method of the class: WP_REST_Response{}

No Hooks.

Return

WP_Error|null. WP_Error or null on not an errored response.

Usage

$WP_REST_Response = new WP_REST_Response();
$WP_REST_Response->as_error();

Changelog

Since 4.4.0 Introduced.

WP_REST_Response::as_error() code WP 6.4.3

public function as_error() {
	if ( ! $this->is_error() ) {
		return null;
	}

	$error = new WP_Error();

	if ( is_array( $this->get_data() ) ) {
		$data = $this->get_data();
		$error->add( $data['code'], $data['message'], $data['data'] );

		if ( ! empty( $data['additional_errors'] ) ) {
			foreach ( $data['additional_errors'] as $err ) {
				$error->add( $err['code'], $err['message'], $err['data'] );
			}
		}
	} else {
		$error->add( $this->get_status(), '', array( 'status' => $this->get_status() ) );
	}

	return $error;
}