WP_Theme_JSON_Resolver::has_same_registered_blocks( string $origin ): bool

In this article

Checks whether the registered blocks were already processed for this origin.

Parameters

$originstringrequired
Data source for which to cache the blocks.
Valid values are 'core', 'blocks', 'theme', and 'user'.

Return

bool True on success, false otherwise.

Source

protected static function has_same_registered_blocks( $origin ) {
	// Bail out if the origin is invalid.
	if ( ! isset( static::$blocks_cache[ $origin ] ) ) {
		return false;
	}

	$registry = WP_Block_Type_Registry::get_instance();
	$blocks   = $registry->get_all_registered();

	// Is there metadata for all currently registered blocks?
	$block_diff = array_diff_key( $blocks, static::$blocks_cache[ $origin ] );
	if ( empty( $block_diff ) ) {
		return true;
	}

	foreach ( $blocks as $block_name => $block_type ) {
		static::$blocks_cache[ $origin ][ $block_name ] = true;
	}

	return false;
}

Changelog

VersionDescription
6.1.0Introduced.

User Contributed Notes

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