我有一个 Drupal 站点正在生产中。该站点足够大,以至于我认为手动重新创建内容类型、用户等是不可行的。但是,客户已决定他们希望该站点基于 Drupal Commons 而不是 vanilla Drupal。如何将我的整个现有站点迁移到 Drupal Commons?
我的第一个想法是安装一个 Drupal Commons 实例并使用 Backup and Migrate 模块来移动所有内容,但这不会从 Commons 实例中删除所有漂亮的预配置页面、视图和东西吗?
我有一个 Drupal 站点正在生产中。该站点足够大,以至于我认为手动重新创建内容类型、用户等是不可行的。但是,客户已决定他们希望该站点基于 Drupal Commons 而不是 vanilla Drupal。如何将我的整个现有站点迁移到 Drupal Commons?
我的第一个想法是安装一个 Drupal Commons 实例并使用 Backup and Migrate 模块来移动所有内容,但这不会从 Commons 实例中删除所有漂亮的预配置页面、视图和东西吗?
我很确定大多数预先配置的东西实际上都是功能。所以你应该能够用 drupal commons 替换你当前的 drupal 文件并启用你想要的附加功能。
未经测试,但我知道https://github.com/acquia/commons/tree/master/docroot/profiles/drupal_commons/modules/features中有大量功能“模块” 。
总结一下我们采用的方法的相关部分,首先要做的是在旧站点上安装节点导出、CCK 内容复制和备份和迁移模块。接下来,为需要下载的模块和需要在默认 Commons 配置之上启用的模块编译列表,包括刚刚提到的模块。这需要是旧站点上使用的模块的完整列表;否则节点导出无法正常工作。
在旧站点上,每个单独的内容类型随后使用 CCK 内容复制模块导出。使用节点导出模块为每种内容类型导出节点;所有内容都没有立即导出,因此可以在导入过程中单独处理有问题的内容类型。
在新的 Commons 站点上,下载并启用了相应的模块。导入内容类型,这是一个相当漫长的过程。接下来所有节点都被导入。请注意,尽管我尝试了配置,但文件上传并未正确迁移。
在此之后,决定将遗留内容类型转换为 Drupal Commons 附带的内容类型。在 Commons 站点上,安装了 Node Convert 模块,并创建了相应的 Node Convert 模板。内容已全部转换(减去其文件附件)。
为了移动用户,用户表的 SQL 转储是从旧站点生成的,并导入到 Commons 站点。由于字段、角色等不同,因此必须手动更新每个用户的配置文件。
之后,主要是自定义配置——决定和创建组。主题是定制的。所有导入的内容都需要手动与适当的组关联、标记,并且需要将适当的文件重新上传到其相应的节点。