昨晚睡不着觉。进入蓝月亮后,我有了一个想法想尝试一下。虽然我作为一名作家的日常工作意味着我花更少的时间通过严格的试错构建插件和主题来破坏网站,但 WordPress 一直困扰着我的问题让我无法安息和梦想和平。

上周,古腾堡 8.9 从其基于块的小部件系统中删除了实验性标志。总的来说,这是该功能的第一个可靠版本,将于今年 12 月在 WordPress 5.6 中发布。然而,最大的问题集中在主题作者如何能够以传统方式设计小部件的样式。由于实际的小部件被逐步淘汰并被块替换,主题作者将无法再访问标准小部件和小部件标头类。这是有问题的,因为没有可预测的方式来为特定侧边栏的所有小部件设置样式以使其看起来相同。

经典的例子是盒装小部件设计。许多主题,例如流行的 Collibury,都在其侧边栏中采用了这种设计,您可以在下面的屏幕截图中看到。

Colibri主题右侧边栏的盒装小部件设计。

在当前状态下,主题作者没有可靠的方法通过基于块的小部件系统创建此侧边栏设计。由于无法控制用户将要放入侧边栏的任何内容的结构,因此很容易观察到这种情况并认为主题设计者正在失去控制。

根据最近的 GitHub 票证和本周早些时候的相关聊天,古腾堡开发团队似乎无意在新旧控制系统之间建立对等,至少就主题设计而言被关注到。

需要重复。我是将最终控制权移交给用户的热心支持者。然而,我们需要在帮助他们做出明智的选择之间取得平衡。

主题作者必须开始考虑这将如何影响他们的工作,并为侧边栏、小部件和将来会受到全站点编辑影响的其他方面提出创造性的解决方案。

可能的解决方案

昨晚让我兴奋的事情之一是将块模式(我最喜欢的功能之一)与小部件相结合。问题是基于块的小部件系统目前不支持块模式。而且,直到与 Gutenberg 的一位设计师 Mark Uraine 通过 GitHub 票进行快速讨论之前,这个想法似乎甚至都没有出现在桌面上。

对于主题作者来说,过去传统的侧边栏​​和widget系统只是一种模式。 WordPress 为主题开发人员提供了为整个小部件和小部件标题设置包装 HTML 元素的能力。这是一个僵化且​​不灵活的系统,但它是一个可靠的标准。

基于块的小部件恰恰相反。它们基本上是免费的,用户可以将任意内容放入“块区域”。

当我们将模式的结构与侧边栏中块的灵活性结合起来时会发生什么?

这个想法让我在经历了一个不安的夜晚后,今天一大早就起床躺在电脑屏幕后面。这是一个简单的概念。主题作者可以为最终用户提供“小部件”模式。这将让用户在主题作者认为最好的和开辟自己的道路(两全其美)之间做出选择。

重现盒装“小部件”模式示例的简单性。

而且,这就是区块系统真正的魅力所在。主题作者可以创建任意数量的模式。这为用户提供了更多选择。

无论Gutenberg 插件目前是否支持基于块的widget 系统的模式,这个想法很容易测试。在新小部件屏幕的侧边栏中,我只需要添加一个带有小部件类的新组块。然后,我添加了带有 widget__title 类的 H3 标题块。这些类在模式的上下文中甚至可能不是必需的,除非主题作者希望直接将它们作为目标。在自定义类之外,我向组块添加了一个简单的背景并更改了标题的文本颜色。我还在用户自定义内容所在的位置插入了一个空段落。

之后,只需测试每个模块即可。

widget块编辑器中的伪块模式。

我很想知道主题作者和古腾堡团队对这个想法的看法。我认为它在减轻传统小部件和基于块的小部件之间的过渡痛苦的同时具有一定的优势。

我看到的最大问题是可发现性。如果主题作者走这条路,最终用户会知道这些“小部件/块模式”的存在吗?

喜欢这样:

喜欢正在加载...

资源