WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Платформа для конвертации и монетизации трафика
функция не описана

WP_REST_Themes_Controller::get_item_schema() public WP 5.0.0

Retrieves the theme's schema, conforming to JSON Schema.

{} Это метод класса: WP_REST_Themes_Controller{}

Хуков нет.

Возвращает

Массив. Item schema data.

Использование

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

Список изменений

С версии 5.0.0 Введена.

Код WP_REST_Themes_Controller::get_item_schema() WP 5.5.3

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

	$schema = array(
		'$schema'    => 'http://json-schema.org/draft-04/schema#',
		'title'      => 'theme',
		'type'       => 'object',
		'properties' => array(
			'stylesheet'     => array(
				'description' => __( 'The theme\'s stylesheet. This uniquely identifies the theme.' ),
				'type'        => 'string',
				'readonly'    => true,
			),
			'template'       => array(
				'description' => __( 'The theme\'s template. If this is a child theme, this refers to the parent theme, otherwise this is the same as the theme\'s stylesheet.' ),
				'type'        => 'string',
				'readonly'    => true,
			),
			'author'         => array(
				'description' => __( 'The theme author.' ),
				'type'        => 'object',
				'readonly'    => true,
				'properties'  => array(
					'raw'      => array(
						'description' => __( 'The theme author\'s name, as found in the theme header.' ),
						'type'        => 'string',
					),
					'rendered' => array(
						'description' => __( 'HTML for the theme author, transformed for display.' ),
						'type'        => 'string',
					),
				),
			),
			'author_uri'     => array(
				'description' => __( 'The website of the theme author.' ),
				'type'        => 'object',
				'readonly'    => true,
				'properties'  => array(
					'raw'      => array(
						'description' => __( 'The website of the theme author, as found in the theme header.' ),
						'type'        => 'string',
						'format'      => 'uri',
					),
					'rendered' => array(
						'description' => __( 'The website of the theme author, transformed for display.' ),
						'type'        => 'string',
						'format'      => 'uri',
					),
				),
			),
			'description'    => array(
				'description' => __( 'A description of the theme.' ),
				'type'        => 'object',
				'readonly'    => true,
				'properties'  => array(
					'raw'      => array(
						'description' => __( 'The theme description, as found in the theme header.' ),
						'type'        => 'string',
					),
					'rendered' => array(
						'description' => __( 'The theme description, transformed for display.' ),
						'type'        => 'string',
					),
				),
			),
			'name'           => array(
				'description' => __( 'The name of the theme.' ),
				'type'        => 'object',
				'readonly'    => true,
				'properties'  => array(
					'raw'      => array(
						'description' => __( 'The theme name, as found in the theme header.' ),
						'type'        => 'string',
					),
					'rendered' => array(
						'description' => __( 'The theme name, transformed for display.' ),
						'type'        => 'string',
					),
				),
			),
			'requires_php'   => array(
				'description' => __( 'The minimum PHP version required for the theme to work.' ),
				'type'        => 'string',
				'readonly'    => true,
			),
			'requires_wp'    => array(
				'description' => __( 'The minimum WordPress version required for the theme to work.' ),
				'type'        => 'string',
				'readonly'    => true,
			),
			'screenshot'     => array(
				'description' => __( 'The theme\'s screenshot URL.' ),
				'type'        => 'string',
				'format'      => 'uri',
				'readonly'    => true,
			),
			'tags'           => array(
				'description' => __( 'Tags indicating styles and features of the theme.' ),
				'type'        => 'object',
				'readonly'    => true,
				'properties'  => array(
					'raw'      => array(
						'description' => __( 'The theme tags, as found in the theme header.' ),
						'type'        => 'array',
						'items'       => array(
							'type' => 'string',
						),
					),
					'rendered' => array(
						'description' => __( 'The theme tags, transformed for display.' ),
						'type'        => 'string',
					),
				),
			),
			'textdomain'     => array(
				'description' => __( 'The theme\'s text domain.' ),
				'type'        => 'string',
				'readonly'    => true,
			),
			'theme_supports' => array(
				'description' => __( 'Features supported by this theme.' ),
				'type'        => 'object',
				'readonly'    => true,
				'properties'  => array(),
			),
			'theme_uri'      => array(
				'description' => __( 'The URI of the theme\'s webpage.' ),
				'type'        => 'object',
				'readonly'    => true,
				'properties'  => array(
					'raw'      => array(
						'description' => __( 'The URI of the theme\'s webpage, as found in the theme header.' ),
						'type'        => 'string',
						'format'      => 'uri',
					),
					'rendered' => array(
						'description' => __( 'The URI of the theme\'s webpage, transformed for display.' ),
						'type'        => 'string',
						'format'      => 'uri',
					),
				),
			),
			'version'        => array(
				'description' => __( 'The theme\'s current version.' ),
				'type'        => 'string',
				'readonly'    => true,
			),
		),
	);

	foreach ( get_registered_theme_features() as $feature => $config ) {
		if ( ! is_array( $config['show_in_rest'] ) ) {
			continue;
		}

		$name = $config['show_in_rest']['name'];

		$schema['properties']['theme_supports']['properties'][ $name ] = $config['show_in_rest']['schema'];
	}

	$this->schema = $schema;

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