_inject_theme_attribute_in_block_template_content()
Deprecated from version 6.4.0. It is no longer supported and can be removed in future releases. Use
traverse_and_serialize_blocks( parse_blocks( $template_content ), '_inject_theme_attribute_in_template_part_block' )
instead.Parses wp_template content and injects the active theme's stylesheet as a theme attribute into each wp_template_part
Internal function — this function is designed to be used by the kernel itself. It is not recommended to use this function in your code.
No Hooks.
Return
String
. Updated 'wp_template' content.
Usage
_inject_theme_attribute_in_block_template_content( $template_content );
- $template_content(string) (required)
- serialized wp_template content.
Changelog
Since 5.9.0 | Introduced. |
Deprecated since 6.4.0 | Use traverse_and_serialize_blocks( parse_blocks( $template_content ), '_inject_theme_attribute_in_template_part_block' ) instead. |
_inject_theme_attribute_in_block_template_content() inject theme attribute in block template content code WP 6.7.1
function _inject_theme_attribute_in_block_template_content( $template_content ) { _deprecated_function( __FUNCTION__, '6.4.0', 'traverse_and_serialize_blocks( parse_blocks( $template_content ), "_inject_theme_attribute_in_template_part_block" )' ); $has_updated_content = false; $new_content = ''; $template_blocks = parse_blocks( $template_content ); $blocks = _flatten_blocks( $template_blocks ); foreach ( $blocks as &$block ) { if ( 'core/template-part' === $block['blockName'] && ! isset( $block['attrs']['theme'] ) ) { $block['attrs']['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; }