This method has been deprecated. Use rest_default_additional_properties_to_false() instead.

WP_REST_Settings_Controller::set_additional_properties_to_false( array $schema )

Recursively add additionalProperties = false to all objects in a schema if no additionalProperties setting is specified.


Description

This is needed to restrict properties of objects in settings values to only registered items, as the REST API will allow additional properties by default.


Parameters

$schema

(Required) The schema array.


Return

(array)


Source

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

	protected function set_additional_properties_to_false( $schema ) {
		switch ( $schema['type'] ) {
			case 'object':
				foreach ( $schema['properties'] as $key => $child_schema ) {
					$schema['properties'][ $key ] = $this->set_additional_properties_to_false( $child_schema );
				}
				$schema['additionalProperties'] = false;
				break;
			case 'array':
				$schema['items'] = $this->set_additional_properties_to_false( $schema['items'] );
				break;
		}

		return $schema;
	}

Changelog

Changelog
Version Description
6.1.0 Use rest_default_additional_properties_to_false() instead.
4.9.0 Introduced. This method has been deprecated. Use {@see rest_default_additional_properties_to_false()} instead.