WP_REST_Widget_Types_Controller::register_routes()publicWP 5.8.0

Registers the widget type routes.

Метод класса: WP_REST_Widget_Types_Controller{}

Хуков нет.

Возвращает

null. Ничего (null).

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

$WP_REST_Widget_Types_Controller = new WP_REST_Widget_Types_Controller();
$WP_REST_Widget_Types_Controller->register_routes();

Заметки

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

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

Код WP_REST_Widget_Types_Controller::register_routes() WP 6.4.3

public function register_routes() {
	register_rest_route(
		$this->namespace,
		'/' . $this->rest_base,
		array(
			array(
				'methods'             => WP_REST_Server::READABLE,
				'callback'            => array( $this, 'get_items' ),
				'permission_callback' => array( $this, 'get_items_permissions_check' ),
				'args'                => $this->get_collection_params(),
			),
			'schema' => array( $this, 'get_public_item_schema' ),
		)
	);

	register_rest_route(
		$this->namespace,
		'/' . $this->rest_base . '/(?P<id>[a-zA-Z0-9_-]+)',
		array(
			'args'   => array(
				'id' => array(
					'description' => __( 'The widget type id.' ),
					'type'        => 'string',
				),
			),
			array(
				'methods'             => WP_REST_Server::READABLE,
				'callback'            => array( $this, 'get_item' ),
				'permission_callback' => array( $this, 'get_item_permissions_check' ),
				'args'                => $this->get_collection_params(),
			),
			'schema' => array( $this, 'get_public_item_schema' ),
		)
	);

	register_rest_route(
		$this->namespace,
		'/' . $this->rest_base . '/(?P<id>[a-zA-Z0-9_-]+)/encode',
		array(
			'args' => array(
				'id'        => array(
					'description' => __( 'The widget type id.' ),
					'type'        => 'string',
					'required'    => true,
				),
				'instance'  => array(
					'description' => __( 'Current instance settings of the widget.' ),
					'type'        => 'object',
				),
				'form_data' => array(
					'description'       => __( 'Serialized widget form data to encode into instance settings.' ),
					'type'              => 'string',
					'sanitize_callback' => static function ( $form_data ) {
						$array = array();
						wp_parse_str( $form_data, $array );
						return $array;
					},
				),
			),
			array(
				'methods'             => WP_REST_Server::CREATABLE,
				'permission_callback' => array( $this, 'get_item_permissions_check' ),
				'callback'            => array( $this, 'encode_form_data' ),
			),
		)
	);

	register_rest_route(
		$this->namespace,
		'/' . $this->rest_base . '/(?P<id>[a-zA-Z0-9_-]+)/render',
		array(
			array(
				'methods'             => WP_REST_Server::CREATABLE,
				'permission_callback' => array( $this, 'get_item_permissions_check' ),
				'callback'            => array( $this, 'render' ),
				'args'                => array(
					'id'       => array(
						'description' => __( 'The widget type id.' ),
						'type'        => 'string',
						'required'    => true,
					),
					'instance' => array(
						'description' => __( 'Current instance settings of the widget.' ),
						'type'        => 'object',
					),
				),
			),
		)
	);
}