WP_REST_Settings_Controller::set_additional_properties_to_false( array $schema )

Recursively add additionalProperties = false to all objects in a schema.

Description Description

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

Parameters Parameters


(array) (Required) The schema array.

Top ↑

Return Return


Top ↑

Source 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;
			case 'array':
				$schema['items'] = $this->set_additional_properties_to_false( $schema['items'] );

		return $schema;

Top ↑

Changelog Changelog

Version Description
4.9.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.