W3cubDocs

/WordPress

WP_REST_Search_Controller::sanitize_subtypes( string|array $subtypes, WP_REST_Request $request, string $parameter )

Sanitizes the list of subtypes, to ensure only subtypes of the passed type are included.

Description

Parameters

$subtypes

(string|array) (Required) One or more subtypes.

$request

(WP_REST_Request) (Required) Full details about the request.

$parameter

(string) (Required) Parameter name.

Return

(array|WP_Error) List of valid subtypes, or WP_Error object on failure.

Source

File: wp-includes/rest-api/endpoints/class-wp-rest-search-controller.php

public function sanitize_subtypes( $subtypes, $request, $parameter ) {
		$subtypes = wp_parse_slug_list( $subtypes );

		$subtypes = rest_parse_request_arg( $subtypes, $request, $parameter );
		if ( is_wp_error( $subtypes ) ) {
			return $subtypes;
		}

		// 'any' overrides any other subtype.
		if ( in_array( self::TYPE_ANY, $subtypes, true ) ) {
			return array( self::TYPE_ANY );
		}

		$handler = $this->get_search_handler( $request );
		if ( is_wp_error( $handler ) ) {
			return $handler;
		}

		return array_intersect( $subtypes, $handler->get_subtypes() );
	}

Changelog

Version Description
5.0.0 Introduced.

© 2003–2019 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_rest_search_controller/sanitize_subtypes