wp_restore_group_inner_container

函数


wp_restore_group_inner_container ( $block_content, $block )
Access
Private
参数
  • (string)
    $block_content
    Rendered block content.
    Required:
  • (array)
    $block
    Block object.
    Required:
返回值
  • (string) Filtered block content.
定义位置
  • wp-includes/block-supports/layout.php
    , line 459
引入
5.8.0
弃用

For themes without theme.json file, make sure
to restore the inner div for the group block
to avoid breaking styles relying on that div.

function wp_restore_group_inner_container( $block_content, $block ) {
	$tag_name                         = isset( $block['attrs']['tagName'] ) ? $block['attrs']['tagName'] : 'div';
	$group_with_inner_container_regex = sprintf(
		'/(^s*]*wp-block-group(s|")[^>]*>)(s*]*wp-block-group__inner-container(s|")[^>]*>)((.|S|s)*)/U',
		preg_quote( $tag_name, '/' )
	);

	if (
		WP_Theme_JSON_Resolver::theme_has_support() ||
		1 === preg_match( $group_with_inner_container_regex, $block_content ) ||
		( isset( $block['attrs']['layout']['type'] ) && 'flex' === $block['attrs']['layout']['type'] )
	) {
		return $block_content;
	}

	$replace_regex   = sprintf(
		'/(^s*]*wp-block-group[^>]*>)(.*)(%1$s>s*$)/ms',
		preg_quote( $tag_name, '/' )
	);
	$updated_content = preg_replace_callback(
		$replace_regex,
		static function( $matches ) {
			return $matches[1] . '
' . $matches[2] . '
' . $matches[3]; }, $block_content ); return $updated_content; }