WordPress 6.1 候选版1 已经发布,是时候看看我们可以期待哪些变化了。发布团队和许多贡献者在Trac和GitHub上都努力工作;超过120 项增强和功能请求、241 个错误修复、42 项其他祝福任务,使其在 Trac 中获得超过 400 个工单和50 个 Trac 拉取请求,将Gutenberg更改纳入核心。在 Gutenberg repo 中有 1684 个拉取请求,其中 425 个新功能和增强功能以及 428 个错误修复,其余的是工具、测试、文档和代码质量。
新版本带来了巨大的性能改进、可访问性增强、第一个基于默认块的主题标记为accessibility ready
、新的钩子和函数、私有函数开放供公众使用等等。
性能
在6.1 的45 个 Trac 票证中,19 个组件获得了各种性能改进。最显着的改进出现在 WP_Query 和REST API中,这将影响您下一页加载的很大一部分。
如果您从性能更新中得到一件事,那就让它在 WP_Query 中缓存查询。对于许多开发人员来说,这是一个漫长的梦想,一旦您对其进行测试,这将是您所希望的一切。REST API 对于几个启动缓存更丰富,对prepare_links
(如果你想要的话)更轻。站点健康将检查您的持久对象缓存和页面缓存,而几个私有缓存API函数现在是公共的。您还可以按组刷新缓存、声明支持的缓存功能、验证缓存键等。
除了 Query、REST API、站点健康Site Health 和 Cache API,在多站点Multisite、Bootstrap、媒体Media、文章类型Post(Post Types)、编辑器Editor、数据库Database 和许多其他组件中可以找到性能改进。这里有太多的变化无法一一提及,但请您阅读有关 WordPress 6.1 性能改进的指南。
WordPress 6.1 性能领域指南
其他性能改进:
- 文章/文章类型 – 文章标题不应在
get_user_data_from_wp_global_styles
方法上进行翻译。#55392 - 快速/批量编辑 – 在处理批量编辑文章的数据时检查
show_in_quick_edit
分类属性。#42474 - 修订–
latest_id
用作最新修订 ID 的数组键。#55857
可访问性
与性能类似,可访问性改进包含28 个 Trac 票证,分布在 13 个组件中。我们有第一个基于块的捆绑主题,标有accessibility ready
标签、2023主题和2022主题。表单、站点/模板和块编辑器、管理屏幕和更多可访问性改进将在 6.1 版本中提供。
- WordPress 6.1 可访问性改进
- WordPress 6.1 中必填字段的函数和钩子
块编辑器
WordPress 6.1将10个Gutenberg版本引入核心- 13.1、13.2、13.3、13.4、13.5、13.6、13.7、13.8、13.9、14.0和14.1。
在插件的这 10 个版本中的许多更改中,我们做出了很多努力来使经典主题中的块和其他 Gutenberg 功能更可用,这将确保更容易过渡到混合和基于块的主题。
扩展日常开发中非常需要的块编辑器工具的各个部分的新方法,例如使用 create-block
工具搭建块变体、内容锁定更新、过滤theme.json
数据、扩展查询块、样式引擎、新的React钩子以简化数据访问等等。
- 创建块脚手架工具更新
- 内容锁定功能和更新
- 使用 WordPress 6.1 中的新 React 挂钩简化数据访问
- 扩展查询循环块
- WordPress 6.1 中的区块 API 更改
- 块样式生成(样式引擎)
- WordPress 6.1 中块编辑器首选项的更改
- 每个模块的设计工具名册
- WordPress 6.1 中的编辑器组件更新
- WordPress 6.1 中增强的 TypeScript 支持
- WordPress 6.1 的其他编辑器更改
主题
主题可以更好地控制样式元素、布局和导航,而经典主题也可以控制基于块的模板部分和theme.json
。在下面的开发说明中阅读所有这些内容。
- 传统主题中基于块的“模板部分”
- 块主题中的样式元素
- 重构后在 6.1 中更新了编辑器布局支持
- 内容锁定功能和更新
- 在 WordPress 6.1 中引入“更新 URI”主题标头
- WP 6.1 中的导航块回退行为
更新了theme.json的设置和样式
WordPress 6.1 中的新服务器端过滤器将允许连接到 theme.json 数据(有关更多信息,请参阅56467和54251)。
- theme.json 数据的过滤器
- WordPress 6.1 中的流体字体大小
- 引入了填充、边距和块间隙的预设值
- 在 theme.json 中引用样式值
REST API
REST API 对/search
端点以及漂亮打印的 JSON 响应进行了很好的改进,可以将其添加为查询参数,也可以通过rest_json_encode_options
filter进行控制。
WordPress 6.1 中的其他 REST API 改进
后台管理
WordPress 6.1 新增 WP_List_Table::get_views_links() 生成当前视图链接
登录和注册
使用 is_login() 函数检测当前页面是否为登录界面
媒体
在 5.8 中,我们欢迎对 WebP 图像格式的支持,当生成 WebP 格式并合并到 6.1 的核心(54097、54094和54086)时,我们感到非常兴奋。但是,此提交已在54226中恢复,建议将该功能集成可选功能插件中。
#54788中的更改允许在视频元素中使用 muted 属性,这解决了在查看页面时希望 autoPlay
看到的内容。
数据库
包含wpdb
类的文件从wp-includes/wp-db.php
被重命名为 wp-includes/class-wpdb.php
以符合编码标准。如果您一直直接包含此文件,请不要担心,已经创建了一个新的wp-db.php
文件,然后会自动加载重命名的文件。在#56268中阅读更多内容。
其他开发者更新
如上所述,WordPress 6.1 带有大量新的钩子和功能,下面的文章对于主题和插件开发人员非常有用。
WordPress 6.1 的其他核心更改
更多更改
应用程序密码
允许超级管理员在他们不是其成员的网站上设置应用程序密码。#53224
自动保存
在编辑锁定时阻止自动保存覆盖更改。#55659
缓存 API
防止过多的 notoptions
键查找。#56639
字符集
在将重音字符转换为 remove_accents()
. #35951
定时 API
- 修改
_get_cron_array()
为始终返回一个数组。#53940 - 将错误记录和挂钩添加到
wp-cron.php
. #56048
编辑
- 通用检查块编辑器状态的功能。#51819
- 澄清
get_page_template()
不适用于块主题。#56394 - 块样板:添加新的页脚类别 #56416
外部库
几个外部库已更新到最新版本。这些包括 PHPMailer、GetID3、Moment、Sodium Compat、jQuery、jQuery UI、MediaElement.js、Clipboard.js 和 Underscore
- 在 Thickbox 库中添加对 WebP 图像的支持。#55786
- 更新 PHPMailer 到 6.6.4 #55976 , # 56016 , #56413
- 更新 6.1 的下划线库#56030
- 更新 6.1 的 Moment 库#56031
- 更新 6.1 的 jQuery UI 库#56239
- 将 mediaelement.js 更新到版本 4.2.17 #56319
- 将 jQuery 更新到版本 3.6.1 #56451
- 将 Sodium Compat 更新到 1.19.0 #56564 , #56653
- 将 GetID3 更新到版本 1.9.22 #56692
格式化
- 在#24661中转换重音字符之前标准化为 Unicode NFC 编码
remove_accents()
- 将核心中的所有
esc_url_raw()
调用替换为sanitize_url()
. #55852 - 允许
min()
在内 联CSSmax()
中使用、minmax()
、 和clamp()
值。#55966 - KSES:允许更多与布局相关的 CSS 属性。#56122
- KSES:允许为 CSS 变量赋值。#56353
常规
- 格式化:在
is_serialized()
. #53299 - 用常量
PHP_VERSION
替换phpversion()
函数调用 。#55680 - 块:删除重复使用
realpath()
inregister_block_style_handle()
。#56636 - 块编辑器:删除块编辑器设置中的重复调用
file_get_contents()
。#56637 - 常规:在调用
realpath()
后删除file_exists()
检查 。#56654 - 块:在
register_block_style_handle()
中删除额外的get_theme_file_path()
调用。#56666 - 常规:确保
wp_rand()
在$min
和$max
值等于0
时返回0
。#55194
I18N
I18N:介绍 WP_Textdomain_Registry
存储文本域及其语言目录路径。#39210
登录和注册
- 网络注册中的必填字段。#54344
- 将错误与输入字段明确关联。#54483
媒体
尊重 EXIF 轮换。#54937
网络和站点
- 移动
global_terms_enabled()
到适当的最终目的地。#21734 - 在 *_network_options 函数中使用元数据 API。#37181
- 将网络的主站点 ID 存储在网络选项中。#55802
文章和文章类型
更正get_post_permalink()
检查不存在的文章。#45329
脚本加载器
确保将块脚本排入队列,忽略 render_callback
. #56470
分类
- 标准化用于描述传递给内部操作和过滤器的参数的格式
wp_insert_term()
和wp_update_term()
。#55441 - 在
wp_list_categories()
中将use_desc_for_title
默认设置为false
。#55530 - 将字段描述与字段相关联。#55651
升级/安装
跟踪 WebP 和 AVIF 的 php 扩展和图像库支持。#48116
小工具
存储未初始化小工具的默认选项。#54677
要了解关于WordPress 6.1 的更多内容,请看WordPress大学的相关文章。