WordPress 6.0将推出新的区块锁定功能

WordPress 6.0有几个新的功能,应该让任何扩展者对在这个平台上的构建感到高兴。然而,其中一个更高级的工具是锁定区块的能力,它可以用来防止特定的区块被移动或删除。

即将发布的版本在区块工具栏的选项下拉菜单中包括一个新的 “锁定 “设置,如下面的截图所示。

WordPress 6.0将推出新的区块锁定功能插图

一旦点击锁定选项,就会出现一个模式,允许用户禁止区块的移动或防止其移除。

WordPress 6.0将推出新的区块锁定功能插图1

到目前为止,我发现通过用户界面锁定区块的最佳用例是阻止意外的编辑。因为用户在默认情况下可以访问用户界面设置,如果我需要在布局中移动一些东西或删除它,他们可以在以后禁用锁。

从表面上看,这似乎不是一个特别强大的功能。然而,区块锁定的真正力量是在开发端。主题作者可以使用新的锁定键来防止终端用户移动或删除他们模板中的特定区块。

下面的代码是一个组区块的例子,可以防止这两种情况。

<!-- wp:group {"lock":{"move":true,"remove":true}} -->

<!-- /wp:group -->

这对于更复杂的布局,如标题和导航区,可以说是非常方便。主题作者现在可以在设计容易被破坏的地方对用户体验进行更多控制。

请注意,锁定并不延伸到嵌套区块。因此,如果一个外层的组区块被锁定,用户仍然可以添加、删除或移动里面的任何东西。开发者也必须为他们想保持的任何嵌套项目添加一个锁。有一个开放的票据和一些围绕锁定嵌套区块的早期设计工作,但它不会在WordPress 6.0中登陆。

虽然这个新功能为主题作者提供了更多的控制权,但它并没有授予绝对的权力。用户仍然可以通过点击工具条上的锁图标来解锁区块。然而,正如在WordPress开发圈子里常说的那样,”这是有一个钩子的”。

George Mamadashvili介绍了使用block_editor_settings_all过滤器钩子来定制访问。他提供了一些基于能力、用户电子邮件和上下文(如文章类型)启用或禁用用户界面的例子。对于开发者如何使用这个钩子并没有限制。一般来说,在处理权限问题时,能力检查通常是最好的选择。

开发者可以禁用任何用户移动或删除区块的能力。在现实世界中,这应该有助于机构和自由职业者为他们的客户创造严格控制的体验,特别是在移交网站编辑器的权限时。

对于在WordPress.org上开发主题的开发者,主题团队目前不允许使用这个钩子。它属于 “插件领域 “的准则。上个月,该团队宣布,主题可以锁定区块,但不能禁止用户解锁。

区块的锁定并不限于基于区块的模板。也可以在文章或页面中锁定。例如,通过自定义权限设置,开发者可以扩展它,让管理员和编辑自由发挥,同时防止作者和贡献者推翻锁。

默认情况下,所有区块都支持锁定。对于想退出这一功能的插件开发者来说,他们可以在他们的block.json文件中将supported.lock键设置为false。

我渴望看到新的WordPress插件建立在这个系统上。从网站定制和编辑流程的角度来看,有大量的空间可以探索。

要进一步阅读,请看Anne McCarthy关于用锁定的API和theme.json创建策划的经验的文章。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容