Automattic\WooCommerce\Blocks\Utils
BlockTemplateUtils::inject_theme_attribute_in_content()
Parses wp_template content and injects the current theme's stylesheet as a theme attribute into each wp_template_part
Method of the class: BlockTemplateUtils{}
No Hooks.
Return
String
. Updated wp_template content.
Usage
$result = BlockTemplateUtils::inject_theme_attribute_in_content( $template_content );
- $template_content(string) (required)
- serialized wp_template content.
BlockTemplateUtils::inject_theme_attribute_in_content() BlockTemplateUtils::inject theme attribute in content code WC 9.4.2
public static function inject_theme_attribute_in_content( $template_content ) { $has_updated_content = false; $new_content = ''; $template_blocks = parse_blocks( $template_content ); $blocks = self::flatten_blocks( $template_blocks ); foreach ( $blocks as &$block ) { if ( 'core/template-part' === $block['blockName'] && ! isset( $block['attrs']['theme'] ) ) { $block['attrs']['theme'] = wp_get_theme()->get_stylesheet(); $has_updated_content = true; } } if ( $has_updated_content ) { foreach ( $template_blocks as &$block ) { $new_content .= serialize_block( $block ); } return $new_content; } return $template_content; }