Drupal 10 初探及常见问题答疑

 

Drupal 10 即将发布,官网上预计正式发布时间是 2022年12月14日,当然,这是不跳票的情况下。Drupal 10是对Drupal 9的平滑升级,因此不会像 Drupal 7 升级 Drupal 8 那样,革命式的升级,从而带来很多不兼容以及升级成本。

先普及一下Drupal版本的关系和升级频率,

1. 子版本,比如 9.1.1, 9.1.2,9.1.3等,这种9是对当前小版本的bugfix之类,一般可以直接升级,不会有太大问题。

2. 小版本,比如9.1,9.2,9.3,这种一般6个月发布一次,功能包括 bugfixes、新功能, API改进,还有废弃某一部分API。

3. 大版本,比如8,9,10,这种大版本的发布主要是核心主动升级,比如Symfony升级、数据库、技术迭代等,比如7到8等而导致的,此外也会有新feature,API改进等。

 

我们来看一下 Drupal 10的几个新功能,

  • 默认主题是 Olivero,弃用了 Bartik
  • 默认管理主题是 Claro 弃用了 Seven
  • CKEditor 5 替代了 CKEditor 4
  • 弃用jQuery,使用两个更现代化的JavaScript组件
  • Symfony 6 替代 Symfony 4, PHP 升级到 8.1 

在使用Drupal 10之前,我们对 Drupal 10 开发中常见问题和疑惑做一个简单的解答,以便快速上手和入门。

 

 

Drupal 10 常见问题

 

#1 Drupal 10 发布为什么比之前的版本要快一些? 

因为Symfony 4大约会在 2023年10月停止支持,在这之前要尽快的升级Drupal 的Symfony核心。Drupal 9本身依赖于Symfony 4,因此最新版本的Drupal应该不低于 Symfony 5.0,不过目前Drupal 10直接采用了Symfony 6做为底层框架。

 

#2 Drupal 10 为什么比之前宣布的发布时间要晚一些?

本来宣布是今年年中发布,但是后来推迟到了年底,最重要的因素是因为CKEditor升级到了CKEditor5, 这是一个重大升级,因此导致整体的开发进度有所延后。

 

#3 Drupal 10 有什么特性?

Drupal 10 的新特性,之前在官网有一些介绍,这里简单列举几个。

  • 启用了默认的主题 Bartik,采用了Olivero
  • 启用了默认的后台主题Seven,采用了 Claro
  • 多媒体管理和文件管理功能做了升级
  • Layout Builder,布局系统做了升级
  • 做了一些前后分离的架构适配
  • 放弃了jQuery框架,采用了更加现代的前端框架
  • 自定义主题的开发有了脚手架工具 Starterkit tools
  • 核心升级到了 Symfony 6.2,PHP 升级到了 8.1
  • CKEditor 5 替代了 CKEditor 4

 

#4 怎么准备升级 Drupal 10 ?

首先,针对不同的Drupal版本,升级Drupal 10各有差异,

Drupal 9,这个是最平滑的,最新的Drupal版本,基本按照操作说明,可以无缝的升级 Drupal 10,不需要做太多额外工作。

Drupal 8,建议先升级到Drupal 9,Drupal 8.0到Drupal 8.5也有term的变动,因此先把Drupal 8升级到最新版本,然后升级到Drupal9,再去升级到 Drupal 10.

Drupal 7, Drupal 7 是一个比较老的版本,Drupal 官方会发布一个升级Drupal 10的工具,但是如果自定义代码比较多,升级Drupal 10是一个很大的挑战,估计要花费不少精力和时间。

 

#5 Drupal 9 支持到什么时候?

Drupal 9 的支持时间是 2023年11月低,因为 Drupal 9 使用了 Symfony 4, 而Symfony 4只能支持到这个时间点。

 

#6 升级 Drupal 10 是不是很简单?

回答是 Yes,Drupal 10 的升级比 Drupal 8 简单很多,但是也不是一帆风顺,比较核心升级了,所以有很多API也被废弃,要做一定的检查和适配。 

结论

 

因此,Drupal 10的带来的新功能还是不错的,并且更加的安全和稳定,所以推荐 Drupal 10发布后 6个月内,如果没有重大的Bug,一切稳定,那么就尽快升级到 Drupal 10。

如果需要升级Drupal 10,可以联系晓安团队升级,联系方式见页脚部分。

 

更多资料,请参考我们之前的文章:

 

1. 如何通过Drupal Rector来快速升级Drupal?

2. Drupal 7/8/9 如何升级到Drupal 10?

3. Headless CMS:以API为输出的内容系统的构建

4. 开源的CMS如何实现问卷调研?

5. 搜索引擎如何提取文档里面的内容

6. 基于Drupal的在线教育网站案例

7. 如何基于开源系统构建资料库/文档库平台