跳到正文
原文
Make WordPress Core(核心开发)· Jorge Costa·· 14 天前精选编辑评分70

Gutenberg 24.2 发布,启用 React 19 并改进协作与区块设计工具

What’s new in Gutenberg 24.2? (14 October)

编辑导读

Gutenberg 24.2 已发布并可下载,新增内容旁的协作便签、统一导航链接搜索、图库排序与 duotone,并扩展更多区块的设计工具。React 19 现已默认启用,但检测到已知兼容性问题的插件或主题时会继续使用 React 18,开发者需在 Gutenberg > Experiments 中关闭 React 19 以排查问题。

推荐理由

本次发布汇总了编辑器协作、导航搜索、图库样式和开发接口等变化,可用于评估升级影响与兼容性调整。

“Gutenberg 新动态……”帖子(带有 #gutenberg-new 标签)会在每次 Gutenberg 发布后每隔两周发布一次,展示各版本中包含的新功能。作为提醒,下面概述了跟进 Gutenberg 和编辑器更新的不同方式。

Gutenberg 24.2
有哪些新动态?

Gutenberg 24.2 已发布,现可下载!

本次版本新增了备注的新位置:备注现在浮动在内容旁边的边栏中,因此协作时不再需要关闭“设置”侧边栏。向导航菜单添加分类、标签或文章现在只需进行一次搜索,图库区块还可以对图片进行排序,并用一种双色调为所有图片着色。

始于 24.1 的设计工具一致性工作在本版本中继续推进,新增约 80 个 PR;本次发布还包含 60 多项错误修复,以及一些无障碍性和性能改进。对开发者而言,React 19 现已默认启用,欢迎并需要大家提供反馈。

  1. 备注移入内容旁边的画布边栏
  2. 一次搜索即可找到导航菜单中的所有链接
  3. 对任意图库进行排序并为所有图片着色
  4. 设计工具覆盖更多区块
  5. React 19 现已默认启用,并新增了一些 Interactivity API 增强功能
  6. 其他值得关注的亮点
  7. 更新日志
  8. 首次贡献者
  9. 贡献者

备注移入内容旁边的画布边栏

此前,浮动备注和“设置”侧边栏无法同时打开,而且备注栏会占用内容的空间。在 Gutenberg 24.2 中,备注位于编辑器在画布旁预留的边栏中,因此在你更改区块或文章设置时,它们仍会保持可见(#83786)。

当画布变窄时,每个对话线程都会缩小为其作者的头像;点击头像可再次展开线程。“选项”菜单中新增了“备注”子菜单,可展开、最小化或隐藏备注,编辑器会记住你的选择(#83768)。

其他更改让备注操作更加安全:删除备注时现在会显示“撤销”操作(#83988);选择其他区块时,尚未发送的备注或回复会被保留(#84110);备注会与画布一起滚动(#83852)。

一次搜索即可找到导航菜单中的所有链接

过去,向导航菜单添加页面以外的内容,意味着必须先了解正确的区块,例如“分类链接”或“标签链接”,然后在其中进行搜索。现在,“导航”区块的链接搜索会同时查找所有类型的内容,并在每项结果旁显示其类型,因此页面、文章、分类和标签均只需搜索一次即可找到(#83408)。将现有链接切换为其他类型,例如从分类切换为页面,也不再需要先删除再重新添加。

同一搜索还会列出导航菜单可接受的区块,因此输入“Home”即可找到“首页链接”区块(#83652)。结果现在也会按类型排序,文章和页面排在分类、标签和媒体之前;多种类型一起搜索时,不会丢弃任何结果。该排序适用于编辑器中的每次链接搜索,因此在大型网站上,标签和附件不再会将你要查找的文章挤出结果(#83407)。

对任意图库进行排序并为所有图片着色

图库块的排序控件现在也适用于手动挑选图片的图库。选择从新到旧、从旧到新、A → Z 或 Z → A 会对图片排序一次,之后仍可将其拖动到任意其他顺序。随机排序已移至同一控件中,并会在每次加载前端页面时打乱图片顺序(#83438)。

图库还新增了双色调支持。现在可以通过图库块设置或全局样式(应用于网站上的每个图库)使用一个滤镜为图库中的每张图片着色。在单张图片上设置的双色调优先于图库上设置的双色调(#83978)。

设计工具扩展到更多区块

设计工具的一致性工作继续推进,又完成了约 80 个 PR。部分亮点:

  • 最小宽度和高度控件此前仅适用于五个区块,现在已扩展到 40 个,包括按钮、栏、标题、媒体和文本以及文章标题。
  • 阴影新增支持十个区块,包括段落、列表、按钮、社交图标和图库。
  • 双色调新增支持图库、媒体和文本以及视频,因此视频现在可以与周围图片的色调保持一致(#83979、#83981)。
  • 背景图片和渐变新增支持按钮、列表、列表项以及媒体和文本。
  • 行缩进新增支持标题、文章作者简介和诗歌,后者还新增了文本栏和适应文字功能。

每个区块及其支持项均列在变更日志中。

React 19 现已默认启用,并带来一些 Interactivity API 增强

Gutenberg 24.2 默认开启 React 19 实验(#83784)。除非启用了已知存在兼容性问题的主题或插件,否则网站现在会为 react 和 react-dom 脚本加载 React 19;使用这些主题或插件的用户将继续使用 React 18。该列表最初基于 WordPress.com 上发现的问题编制,并在此次发布中得到了扩充(#84607)。

如果你维护的是使用 React 的插件或主题,请使用 Gutenberg 24.2 进行测试,并报告发现的任何问题。如果某个网站出现问题,可在 Gutenberg > 实验中关闭 React 19。要以兼容 React 18 和 React 19 的方式设置 inert 属性,请使用新的 @wordpress/react-inert-value 软件包(#83987)。

Interactivity API 还新增了两项功能。新的 data-wp-html 指令可从 store 中呈现 HTML,方式与 data-wp-text 呈现文本相同,并且仅接受通过 asDangerousHTML() 标记为受信任的值(#83092):

import { asDangerousHTML, store } from '@wordpress/interactivity';

store( 'myPlugin', {
	state: {
		get description() {
			return asDangerousHTML(
				'<p>A <strong>formatted</strong> description.</p>'
			);
		},
	},
} );
<div data-wp-interactive="myPlugin">
	<article data-wp-html="state.description">
		<p>Loading description.</p>
	</article>
</div>

路由器现在会公开 state.navigating 和 state.initiator,因此区块可以知道客户端端导航何时正在进行,以及是哪个区块启动了导航(#83280)。

其他值得关注的亮点

  • 恢复原始图片:裁剪图片后,图片编辑器会在“更多选项”菜单中提供“恢复原始图片”,因此无需前往媒体库即可回到未裁剪的图片(#81805)。
  • 按钮链接:按钮块的链接弹出窗口现在仅在点击“链接”或使用键盘快捷键时打开,而不再是在每次选择带链接的按钮时都打开(#30166)。
  • 栏:栏数量滑块已被移除。你可以使用区块工具栏中“栏”按钮旁的加号按钮添加栏,并像移除其他区块一样移除栏(#83262)。
  • 选项菜单:“查看”组现在包含“外观”“备注”和“面板”子菜单。插件添加的侧边栏已移入“面板”,而其固定在工具栏中的按钮仍保留在原位置(#82976)。
  • 文章作者:作者字段现在始终可搜索,并且会在服务器上搜索用户,因此即使网站拥有大量用户,也能找到正确的人员(#83323)。
  • 导航链接状态:全局样式可为导航链接的悬停、聚焦、聚焦可见和激活状态设置样式,首先是排版(#83451)。
  • 图标搜索:图标库还会匹配关键词,因此搜索“hamburger”会找到 Menu 图标,搜索“gear”会找到 Settings(#82367)。
  • 减少动态效果:当用户偏好减少动态效果时,Video 和 Cover 区块不会在编辑器中自动播放,Cover 背景嵌入也不会在前端自动播放(#83337、#83452)。
  • 插入器性能:打开插入器会缩短阻塞主线程的时间,并且在插入器打开时选择另一个区块,不再会重新渲染其中的每个项目(#83437、#83284)。
  • 新的文章别名:点击进入 Slug 字段后,新文章过去可能会以 auto-draft 别名发布。现在不会再出现这种情况(#83518)。

更新日志

功能

组件

  • UI:添加 Meter。(83855)
  • UI:添加支持自定义颜色的 Progress。(83781)
  • UI:添加 SearchableSelectControl。(80979)

交互性 API

  • 添加 data-wp-html 指令。(83092)
  • 交互性 API 路由器:添加响应式导航生命周期和发起方 API。(83280)

增强功能

  • 仪表盘小部件:允许已挂载的小部件在运行时声明操作。(83877)
  • React 19:添加新的不兼容插件。(84607)

区块库

  • 手风琴标题:添加行高支持。(83958)
  • 归档:添加最小高度支持。(83573)
  • 头像:添加阴影支持。(83929)
  • 头像:说明头像使用 Gravatar 服务。(83567)
  • 按钮:添加背景图片、尺寸和渐变支持。(83950)
  • 按钮:仅在用户明确操作时打开链接弹出层。(30166)
  • 按钮:添加最小宽度和高度支持。(83894)
  • 按钮:添加阴影支持。(83916)
  • 代码:添加最小宽度和高度支持。(83574)
  • 列:添加最小宽度和高度支持。(83895)
  • 列:移除列数滑块。(83262)
  • 评论分页:添加边框支持。(83746)
  • 评论分页:添加内边距、外边距和区块间距支持。(83744)
  • 详情:添加最小宽度支持。(83576)
  • 嵌入:添加最小宽度和高度支持。(83903)
  • 嵌入:添加内边距支持。(83963)
  • 文件:添加最小宽度和高度支持。(83896)
  • 文件:添加阴影支持。(83918)
  • 脚注:添加最小宽度和高度支持。(83579)
  • 图库灯箱:启用导航后,单击图片不会关闭对话框。(78898)
  • 图库:添加双色调支持。(83978)
  • 图库:添加最小宽度和高度支持。(83897)
  • 图库:为静态图库添加 Order By 控件,并将控件整合到设置侧边栏中。(83438)
  • 图库:添加阴影支持。(83919)
  • 标题:添加最小宽度和高度支持。(83580)
  • 标题:添加文本缩进支持。(83615)
  • 首页链接:添加最小宽度和高度支持。(83582)
  • 首页链接:添加内边距和外边距支持。(83607)
  • 图标:为 icon 属性添加区块绑定支持。(80730)
  • 最新评论:添加边框支持。(84148)
  • 最新评论:添加最小宽度和高度支持。(83904)
  • 最新文章:添加最小宽度和高度支持。(83905)
  • 列表项:添加背景图片、尺寸和渐变支持。(83936)
  • 列表项:添加阴影支持。(83925)
  • 列表项:在移动设备上启用 editableRoot 以支持多选。(82816)
  • 列表:添加背景图片、尺寸和渐变支持。(83935)
  • 列表:添加阴影支持。(83923)
  • 登录/退出:添加最小宽度和高度支持。(83583)
  • 数学:添加最小宽度和高度支持。(83585)
  • 媒体和文本:添加背景图片、尺寸和渐变支持。(83927)
  • 媒体和文本:添加双色调支持。(83981)
  • 媒体与文本:添加最小宽度和高度支持。(83906)
  • 媒体与文本:添加阴影支持。(83976)
  • 媒体与文本:降低内容内边距的优先级。(83563)
  • 导航:在链接 UI 搜索结果中列出允许的区块。(83652)
  • 导航:从链接 UI 搜索所有实体类型。(83408)
  • 无结果:添加最小宽度和高度支持。(83584)
  • 页面列表:添加最小宽度和高度支持。(83908)
  • 分页:添加边框支持。(83745)
  • 分页:添加内边距、外边距和区块间距支持。(83743)
  • 段落:添加阴影支持。(83926)
  • 诗歌:添加适应文本支持。(83980)
  • 文章作者简介:添加文本缩进支持。(83614)
  • 文章评论表单:添加字体系列支持。(83967)
  • 文章评论表单:添加最小宽度和高度支持。(83910)
  • 文章内容:添加最小宽度支持。(83575)
  • 文章摘要:添加最小宽度和高度支持。(83578)
  • 文章特色图片:添加边框样式支持。(83956)
  • 文章分类:添加最小宽度和高度支持。(83586)
  • 文章阅读时长:添加最小宽度和高度支持。(83598)
  • 文章标题:添加最小宽度和高度支持。(83600)
  • 预格式文本:添加最小宽度和高度支持。(83587)
  • 引用块:添加最小宽度支持。(83588)
  • 查询总数:添加最小宽度和高度支持。(83590)
  • 引用:添加按钮颜色支持。(83983)
  • 引用:添加最小宽度支持。(83592)
  • 阅读更多:添加边框样式支持。(83735)
  • 阅读更多:添加最小宽度和高度支持。(83912)
  • RSS:添加最小宽度和高度支持。(83913)
  • 搜索:添加内边距支持。(83984)
  • 网站标语:添加最小宽度和高度支持。(83589)
  • 网站标题:添加最小宽度和高度支持。(83593)
  • 社交图标:添加阴影支持。(83920)
  • 标签列表:添加阴影支持。(83922)
  • 标签面板:添加最小高度支持。(83594)
  • 标签:添加最小宽度支持。(83595)
  • 术语数量:添加外边距支持。(83608)
  • 术语数量:添加最小宽度和高度支持。(83596)
  • 术语描述:添加最小宽度和高度支持。(83597)
  • 术语名称:添加外边距支持。(83606)
  • 术语名称:添加最小宽度和高度支持。(83599)
  • 术语模板:添加最小宽度和高度支持。(83914)
  • 经文:添加最小宽度支持。(83609)
  • 经文:添加文本分栏和缩进支持。(83962)
  • 视频:添加双色调支持。(83979)

组件

  • 卡片:从 Emotion 迁移到 SCSS modules。(82577)
  • CheckboxControl:在各种视口下保持旧版控件的视觉一致性。(83612)
  • ColorPalette:在自定义颜色按钮上显示设计系统焦点环。(83841)
  • ContentEditableControl:使禁用的字段仍可获得焦点。(84083)
  • CustomGradientPicker:将控件点的目标区域扩展至渐变条高度。(84124)
  • CustomGradientPicker:将控件包装器迁移到 SCSS module。(82576)
  • 弃用 Badge。(82379)
  • FontSizePicker:将 Emotion 样式迁移到 SCSS Modules。(84126)
  • FormToggle:使 Switch 在各状态下颜色一致。(83773)
  • 图标:试验按比例缩放描边。(84081)
  • InputControl:悬停时加深字段边框颜色。(83306)
  • ItemGroup:使用设计系统焦点环。(83764)
  • 菜单:使组标签和分隔符与缩进的项目标签对齐。(83993)
  • 菜单:使子菜单标签对齐,并突出显示已展开的父项。(84031)
  • 菜单:防止嵌套 Group 和 RadioGroup。(83792)
  • 菜单:收紧间距,使用 16px 前缀图标,并将宽度限制为 320px。(84028)
  • 进度:迁移剩余的 ProgressBar 用法,并推荐使用 UI Progress。(84021)
  • ProgressBar:使用 WPDS 颜色标记。(83779)
  • RadioControl:使颜色与 UI Radio 一致。(83270)
  • 文本:将 Emotion 样式迁移到 SCSS Module。(82573)
  • 主题:为 Figma 测试生成完整的边框 token 模式。(84035)
  • UI:为剩余的弹出窗口添加项目标签和描述。(83493)
  • UI:为项目弹出窗口组件添加分隔线。(83776)
  • UI:使组件名称与其语义保持一致。(83789)
  • UI:在小屏幕视口中将 InputLayout 的界面框架保持为 md。(82764)
  • UI:推荐 Checkbox、Radio 和 Switch 组件系列以及 Notice 组件。(82685, 83771, 83872, 84097)
  • UI:移除自动的 Notice 播报。(82737)
  • UI:更新 Spinner 的外观并添加 color 属性。(83775)
  • VisuallyHidden:将隐藏样式移出 CSS 层叠层。(84114)

区块编辑器

  • 区块支持:添加 background-clip 区块支持基础设施。(77141)
  • 区块支持:确保 position 类型为字符串。(83500)
  • 区块切换器:在模式预览上显示设计系统的焦点环。(83933)
  • 适应文本:在循环中独立调整每个区块实例的尺寸。(83985)
  • 修复区块计数播报的翻译器注释。(83555)
  • 在编辑器中遵循 background skip 序列化设置。(83943)
  • 插入器:在预览中使用设计系统的焦点环。(83126)
  • 将状态控件徽章迁移到 UI Badge。(82608)
  • 状态:将按实例划定的规则限定到区块的根元素。(83986)

图标

  • 为图标清单添加关键词。(83884)
  • 将“B”图标加粗。(83321)
  • 优化排版和“block-default”图标。(84073)
  • 支持在图标注册表中按关键词搜索。(82367)
  • 更新并添加两端对齐图标。(83519)
  • 更新标题级别图标以实现视觉平衡。(83268)

文章编辑器

  • 基础样式:将管理主题颜色默认为 Blueberry。(83749)
  • 文档大纲:显示设计系统的焦点环,而不是旧版 box-shadow。(83755)
  • 编辑器:将选项菜单的“视图”组归入子菜单。(82976)
  • 编辑器:移除“导出”更多菜单项的图标。(83901)
  • 编辑器:将文章作者字段改用 SearchableSelect。(83323)
  • 编辑器:将模板选项改用 UI Menu。(82964)

媒体

  • 媒体编辑器:在裁剪器上方添加会话边界。(83550)
  • 媒体编辑器:在模态框中恢复原始图像。(81805)
  • 媒体编辑器:当保存附件详情失败时显示错误。(83560)
  • 媒体编辑器:将裁剪宽高比改用 UI Menu。(82968)
  • 为编辑后的图像跟踪原始附件 ID。(81803)

站点编辑器

  • 画布加载器:使用来自 wordpress/ui 的 Progress。(83860)
  • 字体库:将集合操作改用 UI Menu。(82965)
  • 全局样式:为 Navigation Link 添加伪状态控件。(83451)
  • 全局样式:更新“样式 > 区块”的说明。(83515)
  • 样式手册:添加指向示例文本的链接。(83448)

DataViews

  • 字段 API:添加服务器端注册表和 REST 路由。(84078)
  • 在视图配置中按字母顺序列出可隐藏字段。(83947)
  • MediaEdit:使用设计系统的焦点环。(83854)
  • 截断筛选器标签,而不是换行显示。(83879)

协作

  • 笔记:为浮动笔记添加显示和隐藏选项。(83768)
  • 笔记:为已删除笔记的 snackbar 添加撤消操作。(83988)
  • 笔记:将浮动笔记移入画布边距。(83786)

错误修复

  • 连接器:当已存储的 API 密钥无法验证时,保持其只读状态。(83889)
  • 日期:移除末尾反斜杠,而不是将其格式化为“undefined”。(81528)
  • 实验:不要使用旧版密钥使已保存的选项失效。(84619)
  • useServerSideRender:解析从捕获的错误中获取的消息。(83365)

组件

  • BorderControl:从边框宽度单位中移除 %。(83492)
  • Checkbox:防止圆角主题使复选框变成圆形。(83526)
  • CollapsibleCard:将标题焦点环限定到其自身的触发器。(81314)
  • 修复多态类型定义泄漏 as 属性。(82704)
  • FocalPointPicker:在编辑器画布上释放时结束拖动。(83348)
  • Menu:在使用者中禁用触发器而非根元素。(83791)
  • PaletteEdit:重命名预设时不再更改 slug。(83750)
  • Popover:与 iframe 交互时关闭非模态弹出框。(83509)
  • Popover:弹出框停止移动后移除 will-change 提示。(77359)
  • RadioControl:保持 16px 的视觉尺寸,同时扩大点击区域。(83840)
  • SandBox:修复 Safari 中需要 referrer 的嵌入预览。(84014)
  • TextControl:禁用时使用设计系统颜色。(83307)
  • Theme:修复虚拟模块、根样式和种子验证。(83355)
  • Theme:改进无障碍性、API 文档和兼容性检查。(83358)
  • Theme:让 JavaScript 令牌回退转换具备语法感知能力。(83356)
  • Theme:在 Lightning CSS 中保留全局令牌引用。(83359)
  • UI:将选择弹出框的勾选标记与首个标签行对齐。(82942)
  • UI:保留 Autocomplete 项的类型推断。(84095)
  • UI:保留 Combobox 源项的泛型。(84094)

区块编辑器

  • Columns:允许将列放置在外侧边缘。(83274)
  • 修复当“管理允许的区块”是唯一的“高级”控件时未显示的问题。(84067)
  • 修复多选期间样式或嵌套属性被覆盖的问题。(80070)
  • Paste:为每个粘贴的 data-URI 图像提供唯一文件名,避免上传冲突。(79480)
  • Paste:将文本边缘的不换行空格替换为普通空格。(83464)
  • 富文本:修复 iOS 双重点击选择,防止在可编辑宿主中捕获焦点。(81042)
  • 在“解决区块”差异中显示空白字符变化。(82397)
  • 样式状态:修复未选择区块时出现的异常。(84140)
  • 排版:仅列出可变字体范围内的字重。(83128)

区块库

  • Group、Cover:在状态中跟踪放置区域元素。(83756)
  • Image:修复 circle-mask 样式中无效的 CSS url() 值。(82333)
  • Image:修复灯箱使用缩略图宽高比而非原始图像宽高比的问题。(79058)
  • Image:修复当灯箱不是 <body> 的直接子元素时遮罩层无法使用(无法关闭)的问题。(83480)
  • Image:提高灯箱按钮选择器的特异性。(70800)
  • Math:将单元格对齐方式存储在 MathML 中,并在 Chromium 中为对齐和上划线提供 polyfill。(83164)
  • 文章特色图片:修复启用 isLink 时的崩溃。(81584)
  • 标签云:更新样式并添加 !important。(70224)
  • 模板部件:如果无法获取数据库版本,则回退为从主题文件渲染模板部件。(83809)

协作

  • Notes:在禁用回收站时永久删除。(84102)
  • Notes:根据 body 绘制画布分隔线,以使用主题文字颜色。(84158)
  • Notes:不将锚点写入撤消历史记录。(84079)
  • Notes:保留未发送的便笺和回复草稿。(84110)
  • Notes:重置浮动便笺中段落的顶部边距。(84101)
  • Notes:恢复与父便笺一同放入回收站的子便笺。(84100)
  • Notes:限制解决便笺和已解决会话的菜单操作。(73243)
  • Notes:浮动便笺随画布滚动。(83852)

媒体

  • Media Editor:修复滚轮缩放后平移拖动导致撤消历史记录被大量填充的问题。(83558)
  • Media Editor:阻止裁剪像素吸附记录到撤消历史记录中。(83571)
  • MediaEdit:在图像预览后显示棋盘格背景。(83846)
  • MediaUpload:修复重新打开图库媒体库时的控制台错误。(76749)
  • MediaUpload:修复 gallery 属性忽略 allowedTypes 的问题。(78257)

数据层

  • Core Data:按类型对链接建议进行排名,并停止丢弃合并后的结果。(83407)
  • RTC:修复非同步实体的撤消功能中断问题。(83888)

DataViews

  • Fields:修复无法编辑用户的 AuthorView。(83498)
  • 在数据视图挂载时测量容器,以避免出现单列闪烁。(83752)

文章编辑器

  • 编辑器:修复使用 auto-draft slug 的新文章被发布的问题。(83518)
  • REST API:为文章和评论添加移至回收站链接。(84045)

站点编辑器

  • 可扩展站点编辑器:将自定义区块分类传递给区块存储。(83762)
  • 全局样式:修复“样式”屏幕中的弹出层位置。(84048)

无障碍

  • 编辑器:合并相邻修订版本的内联差异。(80579)
  • UI:在 SearchableChipSelect 中播报已选标签。(82863)

区块库

  • 封面:当用户偏好减少动态效果时,不要自动播放嵌入的背景视频。(83452)
  • 视频、封面:当用户偏好减少动态效果时,不要在编辑器中自动播放。(83337)

性能

区块编辑器

  • 检查插入器的备用容器未进行记忆化。(83446)
  • 插入器:管理漫游式 tab 索引,以避免重新渲染每个项目。(83437)
  • 插入器:在区块选择发生变化时,停止重新渲染区块列表。(83284)

实验

  • 管理后台设计令牌:将 wp-admin 容器圆角整合到设计系统比例尺中。(82427)
  • 管理后台设计令牌:使用设计系统令牌重新设计经典 wp-admin 控件。(82425)
  • 实验:默认启用 React 19 实验,但检测到不兼容的主题或插件时除外。(83784)
  • RTC:在 core-data 中添加 EntitySyncManager 接口。(83410)

文档

  • 区块解析器:将 blockName 属性正确记录为可空。(70900)
  • 区块解析器:将 \WP_Block_Parser::$stack 记录为列表。(82695)
  • 组合框:为故事中的弹出对话框添加标签。(83476)
  • DataViews:修复 README,将 sort() 描述为接收字段值而非项目。(83483)
  • 设计系统:明确工具提示标签和 UI 审查指南。(83898)
  • 文档:明确 wordpress/ui 图标颜色要求。(83564)
  • 文档:说明代理的隔离依赖项。(84141)
  • 文档:修复已发布的 Vitest 迁移指南链接。(83449)
  • 文档:说明区块属性和全局样式值在渲染时不受信任。(83473)
  • 文档:建议使用 UI Tabs 切换视图。(83516)
  • 文档:优化设计系统代理指南。(84007)
  • 文档:从 InspectorControls 示例中移除 CheckboxControl 标题。(83844)
  • 文档:更新共享重置的弃用测试指南。(83989)
  • 环境:在文档中将核心分支从 trunk 改为 master。(83566)
  • 修复文档中的失效链接。(83545)
  • 导航链接:更新 readme 标题,使其与区块名称一致。(83999)
  • Storybook:添加新的贡献页面。(83345)
  • Storybook:将通知公告置于 Components 下方。(83617)
  • Storybook:在 Canvas 控件中显示属性说明。(83581)
  • UI:为表单基元故事添加更改操作。(83591)

代码质量

  • 软件包:声明缺失的对等依赖项,并在 CI 中进行检查。(83765)
  • wp-build:移除未使用的可选对等依赖项。(83601)

React 19

  • 添加 inertValue 辅助函数,并使用它设置 inert 属性。(83871)
  • 添加新的 react-inert-value 软件包,其中包含 inertValue 辅助函数。(83987)
  • Breadcrumb:修复 React 19 下的 getMeasurementRender。(84069)
  • DataViews:在 CompositeGrid 中使用 inertValue。(84072)
  • react-inert-value:添加缺失的 @types/react 对等依赖项。(84024)
  • 移除 use-memo-one 的使用(缺少 React 19 兼容性)。(83952)
  • 将代码和类型升级到 React 19。(83941)

区块编辑器

  • 将 @react-spring/web 从 9.4.5 升级到 10.1.2。(83796)
  • 格式库:将 FormatEditProps 统一为一种类型,并移动私有类型。(83487)
  • 位置控件:修复针对已选状态视口的 useSelect 警告。(83570)
  • RichText:重构 useMarkPersistent,修复 StrictMode 挂载标记。(83463)
  • RichText:移除无用的导出并整合弃用项。(83461)
  • 富文本:将 utils.jsx 重命名为 utils.js。(83758)

协作

  • 备注:将笔记选择同步提取到 useNoteSelection 钩子中。(83528)
  • 备注:提取 NoteReply 并提升 AddNote 门控。(84106)
  • 备注:重构浮动面板测量。(83485)
  • 同步:移除公开的 wp.sync 包。(81999)

媒体

  • 媒体编辑器:从会话中移除初始状态设定。(83893)
  • 媒体工具:将 MediaEdit 添加为私有 API。(84046)
  • 当不存在编辑根节点时,编辑根节点查找返回 0。(84096)

区块库

  • 面包屑:修复 aria 标签翻译上下文中的拼写错误。(84112)
  • 播放列表:用无自动初始化入口替换波形播放器补丁。(83132)

组件

  • 弃用私有 Menu API。(82947)
  • 软件包:将 Ariakit 更新至 0.4.40。(83278)

CSS 与样式

  • 样式:更新颜色,以在 edit-site 中使用 CSS 变量。(79002)
  • 表格:用 overflow-wrap: anywhere 替换已弃用的 word-break。(82480)

交互性 API

  • 为 iAPI 的 getConfig() 添加类型。(71692)
  • 移除已过期的弃用行为。(84098)

主题

  • 全局样式:忽略 theme.json 中类型不符的值。(84523)

工具

  • PR 元数据:将属性列表移至共享评论中。(82302)
  • Props Bot:跳过与评论运行重复的纯审核。(84076)

测试

  • 区块编辑器:隔离可变测试夹具。(83098)
  • 区块编辑器:等待最终键盘链接建议。(83489)
  • 区块库:隔离对顺序敏感的测试交互。(83101)
  • 区块:在测试中隔离注册状态。(83099)
  • 组件:隔离对顺序敏感的 UI 测试。(83103)
  • 核心数据:在 RTC 测试中完成延迟的选择更新。(83366)
  • 数据:在 useSuspenseSelect 测试中断言并静默处理解析错误。(83491)
  • 端到端测试:在图片拖放插入器测试中模拟 Openverse。(83842)
  • 端到端测试:在路由规范中固定网站标题;提高端到端 Storybook 构建的堆大小。(83474)
  • ESLint:允许在单元测试中导入非模块样式表。(84019)
  • 图标:在图标注册表测试中使用 assertEqualHTML()。(83544)
  • 将端到端 Storybook 源代码纳入文档生成。(83634)
  • 备注:修复不稳定的线程滚动端到端测试。(84118)
  • React 19 codemod:渲染 memo 组件时应用 defaultProps。(84568)
  • 测试:为菜单滚动锁定和 LinkControl 协议添加浏览器覆盖测试。(83991)
  • 测试:为浮动备注添加端到端覆盖测试。(83477)
  • 测试:添加 Vitest 浏览器模式失败工件。(83093)
  • 测试:覆盖覆盖脚本测试中的翻译设置。(83886)
  • 测试:强制执行每次调用的 Vitest 控制台预期。(83095)
  • 测试:强制执行 Vitest 断言覆盖率。(83572)
  • 测试:强制执行 Vitest 回调、Promise 和标题规则。(83620)
  • 测试:修复依赖顺序的 wp-env 架构测试。(84139)
  • 测试:修复 Vitest 中的 PostCSS 浏览器外部化警告。(83091)
  • 测试:隔离弃用警告状态。(83107)
  • 测试:隔离可变配置夹具。(83104)
  • 测试:对 JavaScript Vitest mock 导入进行代码检查。(83783)
  • 测试:将内部代码检查迁移至 Vitest,并移除未使用的 Jest 依赖。(83502)
  • 测试:在共享 Vitest 设置中重置弃用历史。(83849)
  • 测试:针对实时 iframe 解析浏览器模式命令。(83495)
  • 测试:在进程内运行 Vitest 类型图验证。(83851)
  • 测试:在 CI 中打乱测试用例顺序。(83111)
  • 测试:在布局、模板注册表和 theme.json 测试中使用严格断言。(83619)
  • 测试:在覆盖脚本测试中使用严格断言。(83782)
  • 测试:在覆盖脚本测试中验证已本地化数据的保留。(83845)
  • 主题:为工件中的种子颜色添加集成测试覆盖。(81161)
  • 工具提示:稳定悬停延迟取消测试。(84113)
  • UI:添加端到端 Storybook 弹出项布局测试夹具。(83488)
  • 单元测试:在调试步骤中检测数据库客户端。(84089)
  • 在测试中使用任何 WordPress 构建都不会附带的模拟插件 slug。(84133)

依赖项

  • 在根目录 package.json 中添加 prettier、eslint 和 stylelint。(84017)
  • 构建:移除 patch-package。(83982)
  • 构建:将 Vite 更新至 8.3.1 并简化 Storybook 工具链。(83569)
  • 构建:将 Vite 更新至 8.3.2 并移除 PostCSS 浏览器解析器。(83992)
  • CI:使用 Dependabot 覆盖 AI 开发锁文件,而不是 npm audit。(83997)
  • 修复锁文件中遗留的对等依赖冲突。(83754)
  • 框架:在使用 React 类型的 workspaces 中声明这些类型。(84013)
  • 框架:将 @typescript/native 从根目录移至使用它的 workspaces。(84027)
  • 框架:从提升式依赖切换到隔离式依赖。(83847)
  • npm:从 legacy-peer-deps 切换到 strict-peer-deps。(81029)
  • 修复锁文件中无效的对等依赖。(84062)
  • 测试:在 AI 开发测试锁文件中升级 ibm-cloud-sdk-core。(83887)
  • 测试:在 AI 开发测试锁文件中升级 undici。(83799)
  • 测试:修补 AI 开发依赖项中的 basic-ftp。(84000)
  • 测试:在 npm audit 后更新 AI 开发包版本。(83830)
  • 测试:将 Vitest 更新至 5.0.3,Storybook 更新至 10.6.1。(83996)
  • 将 typescript-eslint 升级至 v8.70.1。(83760)

构建工具

  • 构建工具:修复不稳定的 ESM 包类型测试超时问题。(84068)
  • 变更日志验证器:忽略 Markdown、Storybook 和配置文件。(83618)
  • CI:检查已发布的工具和配置包是否存在 CHANGELOG。(83577)
  • 编码规范:在区块库函数名代码检查中跳过匿名类方法。(83900)
  • 开发者工具:简化编辑器设置并添加 Zed 设置。(84143)
  • 修复运行 npm run dev 时的 check 类型声明错误。(84070)
  • 在顶层 gitignore 中忽略 composer vendor 文件。(22283)
  • 为 Storybook 和 Vitest 警告关联上游修复。(83632)
  • 读取 npm v12 pack 的 –json 输出。(84011)
  • 发布工具:读取 npm v12 的 JSON 输出结构。(84075)
  • 发布:使用 Node.js 重写 SVN 发布脚本。(84034)
  • 在 .nvmrc 中使用 Node.js v24.20。(84061, 84138)
  • VS Code:添加托管式工作区配置。(84025)
  • Widget Primitives:避免运行时 widget 模块产生 Vite 警告。(83602)

Storybook

  • 避免在 Storybook 中重复注册区块编辑器存储。(83636)
  • 修复 BlockCanvas playground stories 中缺失的区块样式。(81070)
  • 为 CI 作业指定一个独特的名称。(83869)
  • 从清单中读取图标关键词。(84127)
  • 仅在 Storybook 中注册一次 playground 核心区块。(83637)
  • 在 Storybook 冒烟测试中复用 PostCSS 浏览器解析器。(83635)
  • 将 BlockPopover Storybook 测试夹具更新至 API 版本 3。(83642)
  • 更新 Spinner color 属性的清单快照。(83856)

WP Scripts

  • 脚本:重构 lint-style.js 中的 Stylelint 配置检测。(79280)
  • 脚本:在不依赖提升式依赖的情况下解析默认配置。(83902)
  • 脚本:将 –fix 之后传入的文件视为文件参数。(83521)

环境

  • 添加选择 MariaDB 版本的选项。(83751)
  • 当 stdin 不是 TTY 时,将 -T 传递给 docker compose 命令。(78374)

ESLint 插件

  • ESLint:为 use-recommended-components 添加 allowUseWithCaution 选项。(83536)
  • ESLint:允许使用生成的测试标题。(83995)

安全

  • 环境、E2E:更新运行了原生安装脚本的依赖项。(84012)
  • 选择启用 npm v12 的供应链默认设置。(82689)

首次贡献者

以下 PR 由首次贡献者合并:

  • @adamwoodnz:基础样式:将管理主题颜色默认设为 Blueberry。(83749)
  • @haritpanchal:测试:在布局、模板注册表和 theme.json 测试中使用严格断言。(83619)
  • @Intenzi:区块编辑器:修复多选期间样式/嵌套属性被覆盖的问题。(80070)
  • @jshawl:环境:stdin 不是 TTY 时,将 -T传递给 docker compose命令。(78374)
  • @karthick-320:图标:为图标清单添加关键词。(83884)
  • @Kgupta62:弹出窗口:弹出窗口停止移动后移除 will-change 提示。(77359)
  • @tbradsha:将 @react-spring/web从 9.4.5 升级至 10.1.2。(83796)

贡献者

以下贡献者在此版本中合并了 PR:

@aaronrobertshaw @adamsilverstein @adamwood @aduth @alecgeatches @Aljullu @amitraj2203 @andrewserong @ciampo @desrosj @ellatrix @haritpanchal @hbhalodia @Hug0-Drelon @i-am-chitti @im3dabasia @Infinite-Null @Intenzi @jameskoster @jasmussen @jeryj @Jiwoon-Kim @johnbillion @jorgefilipecosta @jshawl @jsnajdr @karthick-320 @karthick-murugan @Kgupta62 @lancewillett @luisherranz @Mamaduka @manzoorwanijk @mcsf @mecskyverse @mikachan @mirka @mukeshpanchal27 @Mustafabharmal @n8finch @noruzzamans @ntsekouras @oandregal @peterwilsoncc @R1shabh-Gupta @ramonjd @retrofox @SainathPoojary @shail-mehta @simison @stokesman @t-hamano @talldan @tbradsha @tellthemachines @theaminulai @USERSATOSHI @whyisjake @yashjawale

#区块编辑器、#核心编辑器、#gutenberg、#gutenberg-new

来源:Make WordPress Core(核心开发) · https://make.wordpress.org/core/2026/10/14/whats-new-in-gutenberg-24-2-14-october/

部分链接为推广/关联链接。