Gutenberg 12.9今天登陆了WordPress.org的插件目录,它是一个强大的版本,即使在过去的几天里对新功能进行了修补,鉴于时间的实际限制,我无法在这篇文章中深入研究所有的东西,但我将尝试向大家介绍一些亮点。
以下是一些我无法深入研究的精选项目,但我仍然鼓励读者去看看。
- 所选颜色的名称现在出现在颜色选择器中。
- 用户现在可以从建议的日期格式列表中选择,或为 "发布日期 "块添加一个自定义格式。这些都是国际化的,所以建议将是针对当地的。
- 当查询没有返回帖子时,主题可以向无结果容器块添加块。
- 标签云块现在有最小和最大尺寸控制。
- 分隔符块支持更新的颜色控制,允许用户选择透明的颜色。
区块锁定的用户界面
Gutenberg 12.9为锁定区块引入了一个新的用户界面。在工具栏的 "更多选项 "下拉菜单中,用户可以选择锁定选项,这将弹出一个有两个选项的屏幕。
- 禁用移动。 不允许移动区块本身。然而,可以在它周围移动兄弟区块。
- 防止删除。 防止该区块被删除。
Andrei Draganescu在12.9版本的公告中指出了以下几点。
当一个区块被锁定时,用户要么无法移动它,要么无法删除它,或者两者都不能。这对于像 "帖子内容 "这样的网站级区块特别有用,许多主题都想把它锁定。
然而,这个定义并不能完全解释块级锁定。有一点需要注意的是:这个新的用户界面把锁的钥匙交给了最终用户。从技术上讲,他们已经通过代码编辑器拥有了这种能力,但现在可以通过界面使用。
从主题开发的角度来看,块级锁定只是要求用户在移动和/或删除块时采取额外的步骤。它不是一个 "强制 "或 "永久 "的锁。这是一个受欢迎的功能,但主题开发者应该明白它的局限性,这个新的用户界面为用户提供了更多的权力,而不是更少。
画廊的块状间隙支持......某种程度上来说
在这个版本中,我最兴奋的功能之一是增加了对图库图片之间间距的支持。主题作者一直依靠专门的块状样式来给用户提供选择,通常仅限于默认和 "无间隙 "选项。后者会删除图片之间的任何间距。
不幸的是,在12.9版本中,当用户手动设置间隙时,这个功能被破坏了。检查源代码,它输出的是一个数组而不是有效的CSS。在前端,显示以下警告。
Warning: preg_match() expects parameter 2 to be string, array given in ...wp-content/plugins/gutenberg/build/block-library/blocks/gallery.php on line 51
我相信这一点会在12.9.1中得到纠正。在那之前,我建议不要使用 "块间距"控制。
主题作者警告。 这对那些以 --gallery-block--gutter-size 为目标来控制画廊的默认间隙的主题来说是一个突破性的变化。这个以前可靠的CSS自定义属性在代码中不再存在。目前还不清楚为什么这个变量被完全删除了,而且票据中也没有提到它。
一个新的--wp-style--unstable-gallery-gap变量似乎可以做类似的工作。然而,正如其名称中的不稳定部分所暗示的,它可能不会一直存在。它也被定义在.wp-container-*类上,而不是画廊本身。我还没有做足够的CSS测试来找出如何覆盖它的默认间隙。如果有人有解决方案,请在评论中发表,供他人参考。
列表视图中的儿童被默认为折叠
对于大多数现实世界的场景,我经常避开编辑器中的列表视图,至少对于有许多嵌套块的页面是这样。由于每一层都是默认打开的,要浏览并找到一个特定的块,这简直是一场噩梦。我更愿意在内容画布中点击。
然而,最新的Gutenberg版本可能会改变我对它的使用。12.9版默认将所有子块折叠起来。
主题的自动模式注册
主题作者现在可以让Gutenberg为他们处理模式注册。他们只需要遵循一些规则。
- 在/patterns文件夹中的PHP文件中添加块状图案。
- 在文件头中添加模式数据。
- 当然,也可以添加模式内容。
单独的模式文件应该是以下样子。
<?php
/**
* Title: A Pattern Title
* Slug: namespace/slug
* Description: A human-friendly description.
* Viewport Width: 1024
* Categories: comma, separated, values
* Keywords: comma, separated, values
* Block Types: comma, separated, values
* Inserter: yes|no
*/
?>
<!-- some-block-content /-->
只有Title和Slug标题字段是必须的。每个选项都与register_block_pattern()函数参数匹配。
主题作者如果现在想使用这个功能,但又要提供对WordPress 5.9的向后兼容性,可以检查gutenberg_register_theme_block_pattern()函数是否存在。这至少是目前的函数名称。
这一变化进一步建立在现有的块主题标准之上。作者现在有明确的指导方针,通过标准文件和文件夹来注册大多数功能。
- /parts - 块模板部分
- /patterns - 块模式
- /styles - 全局风格变化
- /templates - 块模板
- theme.json - 全局设置和样式
除了自定义块样式和变化(不要与全局样式变化相混淆),几乎所有的东西都被覆盖。这种全面的设置降低了未来主题作者的入门门槛。即使是经验丰富的开发者也应该欣赏这种简单的命名方式,以及把它们放在什么地方。这就少了一件需要担心的事情。它也将继续简化WordPress.org的主题审查系统。
主题导出和模板构建
说到降低门槛,创作者现在可以在网站编辑器中建立一个完整的主题。好吧,假设他们从一个现有的块状主题开始。
Gutenberg 12.9为建站过程引入了两个重要功能。第一个功能允许用户直接从编辑器中导出一个活动主题的副本。
从这个导出下载的ZIP文件是一个全功能的主题。它包括所有的用户定制,以及原版中已经存在的每个文件。
仍然有一些东西是无法从编辑器中实现的,这些需要在公开发布之前进行手动调整。主题名称和style.css中的其他数据将保持与原始主题相同。也没有办法抢夺定制版本的截图并将其捆绑在ZIP中。
这是设计民主化的一个飞跃,但还需要考虑其他流程。用户应该能够以子主题的形式导出他们的定制,甚至以*.json文件(全局风格变化)的形式导出。
但是,有一个更直接和实用的用例。用户可以下载他们定制的主题并将其上传到另一个网站。
网站编辑器内开发的第二个关键更新是支持更多的模板。除了现有的模板外,用户现在可以从模板管理面板中创建以下内容。
- 作者
- 类别
- 日期
- 标签
- 分类法
新模板是受欢迎的补充,但模板创建功能仍有局限性。没有办法通过用户界面创建这些模板的变体,如类别-wordpress、分类-genre或其他几十种可能性。不过,有一天会实现的。
评论前必须登录!
立即登录 注册