wpseek.com
				A WordPress-centric search engine for devs and theme authors
			rest_handle_multi_type_schema › WordPress Function
Since5.5.0
Deprecatedn/a
› rest_handle_multi_type_schema ( $value, $args, $param = '' )
| Parameters: (3) | 
 | 
| Returns: | 
 | 
| Defined at: | 
 | 
| Codex: | 
Handles getting the best type for a multi-type schema.
This is a wrapper for {@see} that handles backward compatibility for schemas that use invalid types.Source
function rest_handle_multi_type_schema( $value, $args, $param = '' ) {
	$allowed_types = array( 'array', 'object', 'string', 'number', 'integer', 'boolean', 'null' );
	$invalid_types = array_diff( $args['type'], $allowed_types );
	if ( $invalid_types ) {
		_doing_it_wrong(
			__FUNCTION__,
			/* translators: 1: Parameter, 2: List of allowed types. */
			wp_sprintf( __( 'The "type" schema keyword for %1$s can only contain the built-in types: %2$l.' ), $param, $allowed_types ),
			'5.5.0'
		);
	}
	$best_type = rest_get_best_type_for_value( $value, $args['type'] );
	if ( ! $best_type ) {
		if ( ! $invalid_types ) {
			return '';
		}
		// Backward compatibility for previous behavior which allowed the value if there was an invalid type used.
		$best_type = reset( $invalid_types );
	}
	return $best_type;
}