logo

额外区块类型 (EBT) - 全新的布局构建器体验❗

额外区块类型 (EBT) - 样式化、可定制的区块类型:幻灯片、标签页、卡片、手风琴等更多类型。内置背景、DOM Box、JavaScript 插件的设置。立即体验布局构建的未来。

演示 EBT 模块 下载 EBT 模块

❗额外段落类型 (EPT) - 全新的 Paragraphs 体验

额外段落类型 (EPT) - 类似的基于 Paragraph 的模块集合。

演示 EPT 模块 滚动

滚动
01/10/2025, by Ivan

概览

在准备升级到 Drupal 8 时,值得花一些时间来规划升级方法。虽然您之前的 Drupal 站点内容大多可以顺利迁移,但 Drupal 8 站点的配置很可能需要一些手动步骤。例如,核心中的 Views 模块目前没有自动升级功能,这意味着您需要在 Drupal 8 站点中手动创建视图。对于每个站点,都应考虑最合适的升级方法。

简单方法:升级后手动执行步骤

在这种方法中,升级只执行一次,升级后的手动步骤(如创建 Views)在 Drupal 8 站点上线前完成。

建议您先进行一次升级演练,并仔细记录所有手动步骤。如果您对测试环境的结果满意,可以重复这些步骤,在生产环境中构建一个全新的 Drupal 8 安装。

这种方法可用于:

增量升级:结合手动更新步骤

根据升级后手动步骤的数量和复杂性,在执行这些步骤时可能无法让旧站点保持离线状态。如果旧站点仍然在线,而新 Drupal 8 站点正在执行手动更新步骤,用户可能会在旧站点继续创建或更新内容。

Drupal 8 支持增量升级。这意味着可以再次运行迁移来传输新增或更新的内容。但不建议在初次升级和后续增量迁移之间修改旧站点的配置。

incremental-upgrade

这种方法可用于:

仅在 STAGING 和 PROD 环境中迁移内容

Drupal 8 的一项强大新特性是增强的配置管理系统,它允许将整个 Drupal 配置从一个环境部署到另一个环境。典型的环境架构包括开发环境(DEV)、测试环境(STAGING)和生产环境(PROD,提供给终端用户的在线站点)。在 Drupal 8 中,所有配置都可以导出为 YAML 文件并导入到另一个环境。

如果您计划使用独立的 DEV、STAGING 和 PROD 环境,下面的图示展示了一种可能的方法。理解 Drupal 实体的分类很重要:

  • 内容实体(用户、节点、分类术语等)
  • 配置实体(内容类型、字段、视图和所有配置设置)

migrate-dev-staging

上图的升级流程:

1. 将 Drupal 8 DEV 环境从源站点升级。
2. 保持源站点在线(用户仍可创建或更新内容)。与此同时,在 Drupal 8 DEV 环境中完成配置。
3. 使用 Drupal 8 配置管理系统将配置从 DEV 部署到 STAGING。通常会使用版本控制系统(如 Git)。
4. 当 STAGING 配置完成后,将内容从源站点迁移到 STAGING 进行最终验收测试。一旦测试通过,就部署 Drupal 8 PROD 站点,并将内容从源站点迁移到 Drupal 8 PROD。

此方法需要使用 Drush 升级。该方法有几种可能的变体。

  • 参阅 使用 Drush 升级页面,了解如何生成迁移。
  • 升级到 Drupal 8 DEV(上图步骤 1)可以通过运行 drush migrate-import --all 执行所有迁移,或通过运行 drush migrate-import <migration name> 单独执行所需迁移。
  • 仅迁移内容(上图步骤 4)可以通过运行 drush migrate:import --tag=Content 执行所有内容迁移,或通过 drush migrate-import <migration name> 单独运行所需迁移。还可以在manifest 文件中列出需要的迁移。