Automattic\WooCommerce\EmailEditor\Integrations\Core

Initializer::update_block_settingspublicWC 1.0

Configure block settings for email editor support and rendering.

This method handles three types of blocks:

  1. Editor-available blocks: Set supports.email = true and render_email_callback
  2. Render-only blocks: Only set render_email_callback (not available in editor)
  3. Special blocks: Custom handling (e.g., core/post-content stateless renderer)

Method of the class: Initializer{}

No Hooks.

Returns

Array. Modified block settings.

Usage

$Initializer = new Initializer();
$Initializer->update_block_settings( $settings ): array;
$settings(array) (required)
Block settings.

Initializer::update_block_settings() code WC 10.5.0

public function update_block_settings( array $settings ): array {
	// Enable blocks in email editor and set rendering callback.
	if ( in_array( $settings['name'], self::ALLOWED_BLOCK_TYPES, true ) ) {
		$settings['supports']['email']     = true;
		$settings['render_email_callback'] = array( $this, 'render_block' );
	}

	// Set rendering callback for render-only blocks (without enabling in editor).
	if ( in_array( $settings['name'], self::RENDER_ONLY_BLOCK_TYPES, true ) ) {
		$settings['render_email_callback'] = array( $this, 'render_block' );
	}

	return $settings;
}