在这个 开发说明 WordPress Core中的每个重要更改都记录在开发人员备注中(通常称为开发备注)。 好的开发注释通常包括对更改的描述、导致此更改的决策,以及对开发人员应该如何处理此更改的描述。 在WordPress发布周期的测试阶段,开发人员的笔记会发布在Make/Core博客上。 当插件/主题作者和WordPress开发人员需要了解这些更改时,发布开发注释尤其重要。 通常,所有开发注释都在候选发布阶段开始时编译到Field Guide中。 ,您将发现对现有功能和已弃用的API和组件的较小更改的集合。
目录
流体排版最小字体大小 如何在主题中使用最小字体大小 调整灵活布局子项的大小控件 wp-block-heading CSS类添加到每个heading块 wp_theme_has_theme.json() 从theme.json编辑块样式变体 更新了API的缓存行为,以访问全局样式和设置。 切换主题时保持导航 在新的“媒体”选项卡中禁用Openverse类别 修复了块移除后的焦点问题。 错误修复:多站点管理员用户的全局样式 删除弃用的API和组件 RichText组件中的格式化属性 useAnchorRef挂钩未在6.3中删除 DateTimePicker不推荐的属性删除推迟到6.3 不推荐非字符串描述 删除导航编辑器屏幕和相关软件包
流体排版最小字体大小
从中引入的流体排版设置开始 WordPress 6.1 ,WordPress 6.1.1为14px的流动排版规则引入了一个硬编码的最小值,以确保生成的排版规则不会导致字体大小太小,无法在较窄的视口中读取。
在WordPress 6.2中,主题可以为流畅的排版规则定义自己的最小字体大小。 根据主题的要求,有时所需的最小字体大小值可能大于或小于提供的默认值14px。 使用最小字体大小时,任何使用的小于或等于最小字体大小的字体大小都将直接输出为该字体大小。 对于大于最小字体大小的字体,最小字体大小将用作流体排版计算规则的底线。
如何在主题中使用最小字体大小
主题内。 杰森 JSON或JavaScript Object Notation是结构化数据的最小可读格式。 它主要用于在服务器和web应用程序之间传输数据,作为XML的替代。 现在,属性settings.typrography.fluid除了接受现有布尔值之外,还接受一个对象。 将fluid设置为true将使用默认的最小字体大小14px; 然而,主题现在可以为对象提供 最小字体大小
改为属性:
{ “设置”:{ “排版”:{ “流体”:{ “最小字体大小”:“15px” } } } }
使用 最小字体大小
属性设置为15px,在上面的示例中,段落的输出 块 块是一个抽象术语,用于描述使用WordPress编辑器组合在一起形成网页内容或布局的标记单元。 这个想法结合了过去可能通过短代码、自定义HTML实现的概念,并将发现嵌入到单一一致的API和用户体验中。 设置为15px字体大小如下,不应用流动规则:
<p style=“font-size:15px”>15px处的段落</p>
将段落块的输出设置为16px将导致应用流体规则,但最小字体大小为15px:
<p style=“font-size:clamp(15px,0.938rem+((1vw-7.68px)*0.12),16px);”>16px处的段落</p>
道具到 @ 安德鲁斯隆 用于开发注释 ( 顶部 )
调整灵活布局子项的大小控件
添加了一个新的布局功能,允许具有Flex类型布局的容器块的子级提供控件,以更改其在父块中的相对大小。 可以在block.json中的__terialLayout设置中将此功能添加到容器块中,如下所示:
“__terialLayout”(__terial布局):{ “allowSizingOnChildren”:true, “默认”:{ “type”:“flex” } }
然后,子块的控件将显示在块的“尺寸”面板下 侧边栏 WordPress中的侧边栏是指WordPres主题使用的小部件可读区域,用于显示不属于主内容的信息。 它并不总是侧面的垂直柱。 它可以是内容区域、页脚、页眉或主题中任何位置下方或上方的水平矩形。 。如果父对象的方向是水平的,则控件将显示为“宽度”,如果是垂直的,则控件将显示为“高度”。
此控件中有三个选项:
“Fit”是默认值,表示块将只占用与其内部尺寸相同的空间;
“填充”使块拉伸以占用其父级中所有剩余的可用空间;
“固定”允许以px、%、em、rem、vw或vh单位设置固定宽度或高度(取决于父级的方向)。
( #45364 )
道具到 @ isabel_监狱 用于开发说明 ( 顶部 )
wp-block标题 CSS公司 级联样式表。 类添加到每个标题块
在WordPress 6.2中,通过标题块添加的h1-h6元素有一个全新的wp-block-heading CSS类。
此更改使标题块的样式与常规h1-h6元素不同。 例如,以下主题.json将为所有h1元素添加蓝色背景,仅为通过封面块添加的h1元素增加粉红色背景:
{ “样式”:{ “元素”:{ “h1”:{ “颜色”:{ “background”:“蓝色” } } }, “区块”:{ “芯/盖”:{ “元素”:{ “h1”:{ “颜色”:{ “background”:“粉红色” } } } } } } }
在未来的WordPress版本中,正在为每个块添加一个CSS类。 ( #42122 )
道具到 @ 齐拉达姆 将Dev Note发送给 @阿杰伦德 和 @ 邋遢鬼 供审查( 顶部 )
wp_theme_has_theme.json()
WordPress 6.2引入了一种新方法,称为 wp_theme_has_theme.json()
返回活动主题或其父主题是否具有 主题.json
文件。 目标是为第三方提供 美国石油学会 API或应用程序编程接口是一种软件中介,允许程序以有限的、明确定义的方式相互交互和共享数据。 他们可以使用查询活动主题以获取此信息。 它不推荐使用私有API WP_Theme_JSON_Resolver:Theme_has_support()
。详细信息请参阅 采购订单号45168
从theme.json编辑块样式变体
这个新的theme.json API允许现有的 核心 核心是运行WordPress所需的一组软件。 核心开发团队构建WordPress。 直接从 主题.json
文件。 目前不允许添加新变体。 应添加如下样式:
每个变体都应该以其名称为目标,可以在块的 块.json
文件,在“样式”下。
“样式”:{ “区块”:{ “核心/图像”:{ “变化”:{ “四舍五入”:{ “边界”:{ “宽度”:“10px”, “颜色”:“#cc3ee6” } } } } } }
还有一个对应的 用户界面 用户界面 在全局样式的块部分,您可以在屏幕截图中看到。 ( #46343 )
图形:编辑图像块的样式变化
道具到 @ isabel_监狱 用于开发说明 ( 顶部 )
更新了API的缓存行为,以访问全局样式和设置。
添加了WordPress 5.9 用于访问全局设置和样式的新API 在6.2中,他们收到了缓存行为的更新:
wp_get_global设置
=>现在每个请求都缓存结果(也称为非持久缓存),因此速度更快。
wp_get_global_样式表
=>结果现在是每个请求缓存(也称为非持久),而它是使用1分钟瞬态缓存的。 这导致了现在已经修复的错误(站点编辑器中的更改直到1分钟后才反映在前面)。
wp_get_global样式svg过滤器
=>现在每个请求都缓存结果(也称为非持久缓存),而它是使用1分钟瞬态缓存的。 虽然这并没有导致任何已知的错误,但已对其进行了更新以进行尽职调查。
此跟踪问题中提供了更多详细信息 #45171
道具到 @ 奥安德雷格尔 对于 开发说明( 顶部 )
切换主题时保持导航
当用户切换主题时,无论是块主题还是经典主题,站点上的导航都应该保持不变。 为了使用户能够从经典主题切换到块主题,我们对导航块从经典主题导入菜单的方式做了一些进一步的改进。
如果站点具有经典菜单,并且尚未使用导航块创建导航,则导航块将自动导入要使用的经典菜单。 许多经典主题( 例如TT1 )使用主名称和slug作为其主菜单位置的约定。 如果站点在此位置定义了经典菜单,则导航块将导入此菜单。 如果没有,那么它将使用最近创建的经典菜单。
决定导入哪个经典菜单的条件是:
如果没有 wp_导航
菜单存在
如果主题在名为 初级的
,否则使用它
使用最近创建的经典菜单
如果满足这些条件,导航块将显示经典菜单,并自动将其转换为 导航菜单 3.0版引入的主题功能。 WordPress包含一个易于使用的机制,用于提供各种控制选项,让用户在站点上从一个位置单击到另一个位置。 。通过公关了解更多细节( #45976 )
道具到 @ 邋遢鬼 和 @ jffng公司 内容 ( 顶部 )
除了块和模式之外,在WordPress 6.2中,插入器还显示了一个新的媒体选项卡,使用户可以快速访问媒体库中的图像、视频和音频文件。 它允许用户浏览和搜索Openverse目录中的Creative Commons授权图像。 Openverse媒体类别可以通过新的公共块编辑器设置进行控制( 启用OpenverseMediaCategory
). 默认情况下显示此类别,但可以通过更新此设置的值来关闭此类别。 ( #47404 )
settings=wp.data.select('core/block-editor').getSettings(); wp.data.dispatch('核心/块编辑器').updateSettings({ …设置, enableOpenverseMediaCategory:false });
添加筛选器( '块编辑器设置_全部', 函数($设置){ $settings['enableOpenverseMediaCategory']=false; 返回$settings; }, 10 );
其他 块编辑器设置 在手册中列出。
道具到 @ ntsekouras公司 用于开发说明 ( 顶部 )
修复了块移除后的焦点问题。
在WordPress 6.2中 删除块()
改变。 在此之前,当删除块时,会选择上一个块并在用户界面中获得焦点。 有时,如果之前没有可用的块,则会导致焦点丢失,这在使用屏幕阅读器时是一种特别困难的体验。
通过此更新 删除块
()操作已更改为选择第一个父级。 对于编写自定义块的开发人员,或根据 删除块
操作,这可能需要更新其代码,以考虑有时在删除块时选择父级的可能性。 有一种方法可以通过传递 假
作为第二个参数 删除块()
功能。
核心/列表块的示例代码。
const should SelectParent=false; 删除块(parentListId,shouldSelectParent);
中的详细信息 #48204 文件 删除块()
道具到 @ 安道拉甘内斯库 用于初稿,并发送至 @ 网络通信卫星 供审查 ( 顶部 )
错误修复:全局样式 管理员 (和超级管理员) 多站点上的用户
在WordPress 6.1中 布局块支持已重构 输出块间距的CSS值,并提供全局样式中的其他布局控件。 这导致了 缺陷 错误是错误或意外结果。 性能改进、代码优化和被视为增强,而不是缺陷。 功能冻结后,只处理bug,回归(与前一版本相比的不利变化)是最高优先级。 对于没有 未筛选html
功能(例如 多站点 用于描述WordPress安装,该安装包含多个博客网络,按站点分组。 此安装类型具有共享用户表,并为每个博客创建单独的数据库表(wp_posts变为wp_0_posts)。 另请参见 网络 , 博客 , 网站 实例)在全局样式界面中更新时,块间距或布局内容大小未保存。 ( #45520 )原因是在Theme JSON类中 主题.json
为没有 未筛选html
基于对直接CSS属性的查找的功能,例如 边缘
或 衬垫
。对于布局功能,样式规则存储在 间接的 不直接映射到真实CSS属性的属性,例如 块间隙
和 内容大小
.
对于WordPress 6.2(后移植到WordPress6.1.2),这个问题可以通过存储间接属性列表的Theme JSON类来解决( 间接_属性_元数据
),在用于验证的CSS属性和存储在中的间接属性的路径之间进行映射 主题.json
.这样 块间隙
将根据CSS进行验证 缺口
属性,以及 内容大小
针对CSS 最大宽度
财产等。
对于使用布局功能的主题,不需要更改,因为bug修复是如何验证和输出主题JSON样式的内部实现细节。
请参见 #46388 , #46712
道具到 @ 安德鲁斯隆 用于开发说明 ( 顶部 )
删除弃用的API和组件
RichText组件中的格式化属性
格式属性在WordPress 5.4版本中已被弃用,从WordPress6.2开始不再可用。 如果要在使用 超文本
组件,使用 允许的格式
道具。 ( #46106 )
道具到 @ 你知道riad 用于开发注释 ( 顶部 )
使用锚引用
6.3中未删除挂钩
已弃用 使用锚引用
钩子从 @文字印刷/rich-text
这个包不会像最初计划的那样在WordPress 6.3中删除。 ( #45302 )
日期输入框
已弃用的支柱拆除推迟至6.3
移除 __下一步删除帮助按钮
和 __next删除重置按钮
上的道具 日期输入框
中的组件 @wordpress/组件
,最初计划为 古腾堡 古腾堡项目是WordPress的新编辑器界面。 编辑器改进了创建新内容的过程和体验,使编写丰富内容变得更加简单。 它使用“块”来增加丰富性,而不是短代码、自定义HTML等。 https://wordpress.org/gutenberg/ 14.6,已推迟到Gutenberg 15.8版本。 ( #46006 )
道具到 @ 麦钱皮尼 对于上述开发注释 ( 顶部 )
不推荐非字符串描述
在WordPress 6.2中,不推荐使用非字符串作为块描述。
以前,我们可以注册带有非字符串描述的块(例如 反应 React是一个JavaScript库,它使推理、构造和维护无状态和有状态用户界面变得容易。 https://reactjs.org/ . 节点或任何其他 JavaScript脚本 JavaScript或JS是一种面向对象的计算机编程语言,常用于在web浏览器中创建交互效果。 WordPress广泛使用JS以获得更好的用户体验。 当PHP在服务器上执行时,JS在用户浏览器中执行。 https://www.javascript.com/ . 对象)。 另一种实现方法是使用 块.register块类型
滤波器 过滤器是两种挂钩之一 https://codex.wordpress.org/Plugin_API/挂钩 。它们为函数修改其他函数的数据提供了一种方法。 它们是Actions的对应物。 与Actions不同,过滤器是以孤立的方式工作的,不应该有副作用,例如影响全局变量和输出。 用非字符串更改描述。
虽然可能有一些利基边缘案例发现非字符串描述很有用,但贡献者发现这可能会导致意外错误,因此决定弃用它。这使得块描述的推荐类型更明确 一串
只有。
有关上下文和更多信息,请参阅 #44455 和 #44233 . ( 顶部 )
删除导航编辑器屏幕和相关软件包
导航编辑器屏幕是Gutenberg的一个实验功能 插件 插件是一个包含一组功能的软件,可以添加到WordPress网站。 他们可以扩展功能或为WordPress网站添加新功能。 WordPress插件是用PHP编程语言编写的,并与WordPres无缝集成。 这些可以在WordPress.org插件目录中免费获得 https://wordpress.org/插件/ 或者可以是第三方基于成本的插件 贡献者们致力于作为经典作品的潜在替代品 菜单
使用基于块的范例进行筛选。 此功能的代码存在于专用 @文字新闻/编辑导航
包。
然而,随着导航项目的发展,对专用屏幕的要求变得不那么明显,最初为屏幕提议/包含在屏幕中的功能被纳入导航块本身。
在6.1周期中,由于缺乏贡献,该实验在插件中被从 实验
Gutenberg插件设置页面中的屏幕。
随着WordPress 6.2中导航块的列表视图编辑的到来,现在可以在编辑器画布之外编辑菜单,因此,现在是时候正式从代码库中删除这个实验了。
The @文字新闻/编辑导航
包现在已从Gutenberg存储库中删除,然后关联的包未从中发布 净现值法
. ( #47055 )
道具到 @ 获取_保存 内容, @ 安道拉甘内斯库 和 @ 塔尔丹普 供审查 ( 顶部 )
对完整帖子进行审查的建议 @ 麦恰姆皮尼 和 @ 网络通信卫星
# 6-2 , # 开发说明 , # 开发注释-6-2