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.
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. |