Inventory_Presser_REST::handle_null_post( WP_REST_Response $response, WP_Post|null $post, WP_REST_Request $request )

Handles deleted vehicles in REST API responses to prevent warnings.

Description Description

When a vehicle is deleted during a REST API request (e.g., via skip trash setting), the post object may be null when WordPress tries to prepare the response. This filter catches null posts early and returns an error response instead of allowing WordPress to generate warnings.


Top ↑

Parameters Parameters

$response

(WP_REST_Response) (Required) The response object.

$post

(WP_Post|null) (Required) The post object, or null if deleted.

$request

(WP_REST_Request) (Required) The request object.


Top ↑

Return Return

(WP_REST_Response|WP_Error) The response or an error if post is null.


Top ↑

Source Source

File: includes/class-rest.php

	public function handle_null_post( $response, $post, $request ) {
		// If the post is null or not a valid post object, return an error.
		if ( ! $post || ! is_a( $post, 'WP_Post' ) ) {
			return new WP_Error(
				'rest_null_or_invalid',
				__( 'The vehicle has been deleted or is no longer available.', 'inventory-presser' ),
				array( 'status' => 410 ) // 410 Gone.
			);
		}

		return $response;
	}