我终于开始认真研究Drupal 8了,我对配置管理特别感兴趣。我遇到了一些可能有点问题的东西,那就是关于自定义块内容。
我可以看到,配置管理系统能够导出块配置-区域、主题、权重、可见性等,但是在配置导出中没有遇到实际的块内容,这是合理的,也是可以理解的。
在将该块配置导入生产站点时,所发生的似乎是创建块配置,并放置一条保持消息,报告块被破坏或丢失。显然,在生产服务器上不存在块内容。
如何将自定义块从dev/暂存服务器迁移到生产服务器?我意识到Drupal 8中的块是节点之类的可部署实体,因此需要以同样的方式迁移,我知道Drupal 8中有一个迁移API,但这似乎是为将内容从Drupal 6和7个站点迁移到Drupal 8站点而构建的,而不是Drupal 8站点。
此问题特别涉及自定义块,因为其他模块(如视图)生成的块显然将作为配置迁移。
发布于 2017-02-07 18:20:01
我在这里没有提到的另一个解决方案是使用简单块模块,它与core的“自定义块”设置基本相同,但与其有一个奇怪的content + config混合,不如将所有块设置和内容存储在配置中,这些设置和内容可以干净地导出和导入。
有关Drupal 8核心:无法正确导出和导入自定义块。的进一步讨论,请参见。
发布于 2017-10-29 17:55:46
我刚刚发布了一个解决这个问题的贡献模块。从本质上讲,该模块提供了一种基于配置(固定块)的块类型,该块封装自定义块(内容块)。如果内容块不存在,则使用默认内容创建,如果未设置默认内容,则为空。一切都是通过UI完成的,不需要特殊的文件或自定义模块。
我将其命名为固定块内容,并在以下站点发布:
发布于 2019-11-19 06:32:40
请使用结构同步模块。
结构同步提供了Drush命令和管理界面屏幕,用于同步也可视为配置的内容。包括菜单项、自定义块和分类法术语。
步骤:
https://drupal.stackexchange.com/questions/159124
复制相似问题