函数文档

wp_normalize_remote_block_pattern()

💡 云策文档标注

概述

wp_normalize_remote_block_pattern() 函数用于将远程块模式的属性从 snake_case 转换为 camelCase,以适配 WordPress 核心 API 的格式要求。该函数处理特定键名转换,确保模式数据能被 register_block_pattern() 正确使用。

关键要点

  • 函数作用:标准化远程块模式属性,将 snake_case 键名转换为 camelCase。
  • 输入参数:$pattern(必需),从 Pattern Directory API 返回的模式数组。
  • 返回值:返回转换后的标准化模式数组。
  • 转换规则:处理 'block_types' 到 'blockTypes' 和 'viewport_width' 到 'viewportWidth' 的键名映射。
  • 相关函数:与 _register_remote_theme_patterns()、_load_remote_featured_patterns() 和 _load_remote_block_patterns() 配合使用,用于注册远程模式。
  • 版本历史:自 WordPress 6.2.0 版本引入。

代码示例

function wp_normalize_remote_block_pattern( $pattern ) {
    if ( isset( $pattern['block_types'] ) ) {
        $pattern['blockTypes'] = $pattern['block_types'];
        unset( $pattern['block_types'] );
    }

    if ( isset( $pattern['viewport_width'] ) ) {
        $pattern['viewportWidth'] = $pattern['viewport_width'];
        unset( $pattern['viewport_width'] );
    }

    return (array) $pattern;
}

📄 原文内容

Normalize the pattern properties to camelCase.

Description

The API’s format is snake_case, register_block_pattern() expects camelCase.

Parameters

$patternarrayrequired
Pattern as returned from the Pattern Directory API.

Return

array Normalized pattern.

Source

function wp_normalize_remote_block_pattern( $pattern ) {
	if ( isset( $pattern['block_types'] ) ) {
		$pattern['blockTypes'] = $pattern['block_types'];
		unset( $pattern['block_types'] );
	}

	if ( isset( $pattern['viewport_width'] ) ) {
		$pattern['viewportWidth'] = $pattern['viewport_width'];
		unset( $pattern['viewport_width'] );
	}

	return (array) $pattern;
}

Changelog

Version Description
6.2.0 Introduced.