前段时间Drupal 8.5.0发布了,大伟哥把所有的网站都从Drupal 8.4.5升级到了8.5.0,升级过程中没有发现任何问题,前后台显示也很正常。只有一个使用了Double Field模块的网站,在测试核心实验模块Layout Builder的时候出现了错误。Layout Builder模块是新加入Drupal核心的模块,目前还处于试验阶段,它的作用是加强内容类型的布局功能,可以为不同的内容类型指定不同的页面布局,把不同的字段、区块以单栏双栏三栏的形式混合排版插入不同页面位置。
Double Field模块可以让Drupal站长方便地输入不同类型 的一对数值,比如其中一个字段是数字类型,另一个字段是文本类型。举一个典型的例子来说,同一个产品在不同批量时价格是不一样的。我们可以用Double Field模块来展示,当你购买数量在10个以下的时候,单价为8元; 当你一次性购买10件以上的时候,可以享受批发价5元一件。
启用Layout Builder模块以后,原来的管理展示界面“管理>结构>内容类型>文章>管理显示”不再直接显示各个字段的排序权重、区域和样式,而是只有一个打开独立可视化页面的按钮,在新打开的页面里,我们就可以很方便在进行直观的排版了。
但是如果这个内容类型使用了Double Field字段类型 ,新的界面管理页面就会出错。查看Apache的错误日志,会看到如下的记录:
Error: Unsupported operand types in /var/www/html/daweibro.com/modules/double_field/src/Plugin/Field/FieldFormatter/UnformattedList.php on line 29
因为目前还用不着Layout Builder,所以大伟哥直接禁用这个模块就算了,没有进一步寻找解决方法,希望在新发布的版本里能解决这个bug,毕竟对有些网站和站长来说,Layout Builder在Drupal的易用性上还是做了不少的改进的。
- 249 阅读
添加新评论