WP_REST_Settings_Controller::get_item_schema()publicWP 4.7.0

Retrieves the site setting schema, conforming to JSON Schema.

Method of the class: WP_REST_Settings_Controller{}

No Hooks.

Return

Array. Item schema data.

Usage

$WP_REST_Settings_Controller = new WP_REST_Settings_Controller();
$WP_REST_Settings_Controller->get_item_schema();

Changelog

Since 4.7.0 Introduced.

WP_REST_Settings_Controller::get_item_schema() code WP 6.5.2

public function get_item_schema() {
	if ( $this->schema ) {
		return $this->add_additional_fields_schema( $this->schema );
	}

	$options = $this->get_registered_options();

	$schema = array(
		'$schema'    => 'http://json-schema.org/draft-04/schema#',
		'title'      => 'settings',
		'type'       => 'object',
		'properties' => array(),
	);

	foreach ( $options as $option_name => $option ) {
		$schema['properties'][ $option_name ]                = $option['schema'];
		$schema['properties'][ $option_name ]['arg_options'] = array(
			'sanitize_callback' => array( $this, 'sanitize_callback' ),
		);
	}

	$this->schema = $schema;

	return $this->add_additional_fields_schema( $this->schema );
}