注1:此文比较着眼点仅为个人小型站点或博客,是我个人的主观经历和感受,非常不成熟、不全面、不深入。对于其他站点,Drupal 和 WordPress 可能完全不在一个层次,不可比。

注2:此文主体部分是一年多以前写的,现在稍微整理一下发出来。整体情况似乎没什么改变,只不过整个博客圈都没以前热闹了 >_<

Drupal 太庞大,太复杂。

WordPress 更小,更敏捷。

为 WordPress 开发插件和主题,比为 Drupal 开发容易得多。所以,有很多功能是 WordPress 有而 Drupal 没有的,或者是 WordPress 先有的。

然而,也有一些功能是 Drupal 有、而 WordPress 或许永远不会有的。只不过,那些功能你真的用的上吗?

得到新功能的速度:

WordPress 每三四个月出一个大版本,这个大版本指的是 2.7、2.8 之类,即小数点之后第一位数字依次加 1。大版本一般会带来新的功能。除此之外,也会有小版本,如 2.7.1,这种小版本一般是解决 bug,不会有新功能。

Drupal 至少要一两年才会出一个大版本,但这个大版本指的是 5.0、6.0 之类,是小数点之前的数字加 1。Drupal 也是大版本推出新功能,小版本只解决 bug、没有新功能。但是 Drupal 的大部分功能都是通过各种模块(类似于 WordPress 的插件)实现的。

WordPress 升级很容易,即使是大版本升级,许多插件也可以继续使用。Drupal 如果是大版本升级,一般 API 会有变化,模块通常都不能继续使用了。

所以 Drupal 的版本更新速度和 WordPress 无法直接比较。

安装、升级:

WordPress 能直接在后台一键升级核心、插件,直接浏览插件库、主题库,一键安装插件、主题。这都非常方便。Drupal 相形见绌。Drupal 太复杂了,虽然他们也想做这样的功能,但是牵扯到的东西太多,很难做出来,即使做出来了也 bug 重重,不知道何时才能有 WordPress 那么好用的出现。

缓存、加速:

Drupal 自带一定的缓存功能,会自动合并 CSS、JS 文件,自动 Gzip,自动进行局部缓存(比如最新文章之类的区块,不用每次都重新查询生成)。这些 WordPress 都没有。

Drupal 也有模块进行全局缓存、生成静态页面等等。Wordpress 也有这种全局缓存插件,但缺少上一段那种缓存功能,比 Drupal 逊色。

权限控制:

这个是无可取代的 Drupal 优势,Drupal 的权限控制非常详细、具体,WP 则基本等于没有。

输入过滤:

很多特性可以说是各有千秋、各有所好,但 WordPress 有一点我非常不喜欢:

Drupal 不改变输入的文本,只在显示时进行控制。Wordpress 会改变输入的文本。比如留言里用尖括号 <> 括起来的文字都会被 WP 吞掉,即使是管理员也不能在后台看到别人输入了什么。

Drupal 有过滤机制,显示时根据安全设置显示,而输入的原始文本它不会改动。既保证了安全性,又保证了原始数据的完整性和显示的灵活性。

多语言支持:

WordPress 改语言居然要直接改配置文件,为什么不在后台提供选项呢?这方面 Drupal 倒是好得多。

其他:

除了上面说的这些,大部分功能需求,都是 Drupal 和 WordPress 都能做到的,只不过有的用前者容易些,有的用后者容易些。

就我的主观感受而言,如果一个功能 Drupal 支持,那么用 Drupal 实现往往比 WordPress 方便;如果 Drupal 现有的东西和你的需求不符,需要自己动手改一下的话,改 Drupal 可能比改 WordPress 难得多。

所以,选择的时候一定要明确自己的需求啊。