WP_REST_Post_Types_Controller::get_items()publicWP 4.7.0

Retrieves all public post types.

Method of the class: WP_REST_Post_Types_Controller{}

No Hooks.

Return

WP_REST_Response|WP_Error. Response object on success, or WP_Error object on failure.

Usage

$WP_REST_Post_Types_Controller = new WP_REST_Post_Types_Controller();
$WP_REST_Post_Types_Controller->get_items( $request );
$request(WP_REST_Request) (required)
Full details about the request.

Changelog

Since 4.7.0 Introduced.

WP_REST_Post_Types_Controller::get_items() code WP 6.4.3

public function get_items( $request ) {
	$data  = array();
	$types = get_post_types( array( 'show_in_rest' => true ), 'objects' );

	foreach ( $types as $type ) {
		if ( 'edit' === $request['context'] && ! current_user_can( $type->cap->edit_posts ) ) {
			continue;
		}

		$post_type           = $this->prepare_item_for_response( $type, $request );
		$data[ $type->name ] = $this->prepare_response_for_collection( $post_type );
	}

	return rest_ensure_response( $data );
}