WP_REST_Block_Patterns_Controller::get_items( WP_REST_Request $request ): WP_REST_Response|WP_Error

In this article

Retrieves all block patterns.

Parameters

$requestWP_REST_Requestrequired
Full details about the request.

Return

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

Source

public function get_items( $request ) {
	if ( ! $this->remote_patterns_loaded ) {
		// Load block patterns from w.org.
		_load_remote_block_patterns(); // Patterns with the `core` keyword.
		_load_remote_featured_patterns(); // Patterns in the `featured` category.
		_register_remote_theme_patterns(); // Patterns requested by current theme.

		$this->remote_patterns_loaded = true;
	}

	$response = array();
	$patterns = WP_Block_Patterns_Registry::get_instance()->get_all_registered();
	foreach ( $patterns as $pattern ) {
		$migrated_pattern = $this->migrate_pattern_categories( $pattern );
		$prepared_pattern = $this->prepare_item_for_response( $migrated_pattern, $request );
		$response[]       = $this->prepare_response_for_collection( $prepared_pattern );
	}
	return rest_ensure_response( $response );
}

Changelog

VersionDescription
6.2.0Added migration for old core pattern categories to the new ones.
6.0.0Introduced.

User Contributed Notes

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