说说Wordpress和Drupal


上次就想把Wordpress和Drupal做一个对比,这次补上。

Wordpress和Drupal都是目前比较流行的开源CMS,用户数量也比较多。以下将从比较常用的几个方面进行比较。

  1. 平台支持
    作为典型的LAMP结构的应用软件,WP仅支持Mysql,而DP支持mysql和Pgsql两种数据库。从某种虽然像本站这样从pgsql迁移到mysql的平台几乎很少,而且国内很少有Pgsql的空间,作为一个开源项目,提供多个备选数据库还是不错的。
    从响应时间上看,同样采用了Mysql的数据库,DP的响应速度快了WP不少,但换成了Pgsql之后,速度慢了整整一个数量级——这跟Pgsql本身有关。故可以认为同等数量下,DP的硬件要求相对较低。
  2. 数据结构
    看了WP的数据结构,了了10张表,感觉很干净。每个表的字段命名方式也足够清晰。初学者不需要多少时间就能理解整个数据流程。而且默认会在表名前添加wp_前缀,方便那些虚拟主机用户添加别的系统。
    DP的数据结构比较复杂,40几个表的数量相对比较惊人。冗余度很高表名,字段名,重复的很多,也有很多缩写,初学者很容易给吓住。默认没有前缀,虽然可以设置前缀,但相对比较麻烦。
  3. 逻辑结构
    WP的逻辑结构是一个内核程序已经可以完成大部分的功能,其他的功能通过plugin的方式实现。DP的逻辑是整个程序是由若干个Module实现,每块的功能都可以通过设置进行开关设置。相对灵活性比较好,但设置自然而然的复杂了很多。
  4. 安装步骤
    WP的安装步骤相对较多,很详细的流程向导。WP的安装只要设置好数据库就OK,但不够清晰,特别是管理员添加采用的方式,很容易让人迷糊,同时不注意的话,默认注册用户就会有管理员权限。
  5. 本地化实现
    WP的本地化通过.mo文件实现,等于是基于内核的实现,速度几乎不受影响。DP的本地化基于Module实现,每出现一个词组就需要一次数据库查询,相对效率低下。
  6. 主题开发
    由于DP特有的逻辑,主题方面本身也是一个Module,可以通过扩展的方式支持各种同样的模板引擎,很适合于大团队进行主题的开发。WP相对主题开发比较困难,默认不支持页面引擎扩展,主题制作需要一定的PHP基础。
  7. 插件开发
    DP的插件相对比较复杂,涉及到很多内容,需要对整个系统有一定的了解才能完成。WP的插件相对比较简单,对于简单的插件只要明确“在什么地方出现什么”就可以完成,甚至默认还提供了一个Hello Dolly伪插件作为范例。
  8. 管理界面
    DP的管理界面与用户界面高度统一,同时提供了详尽的日志方便查阅。WP采用独立的管理控制台,可查阅的内容不多。
  9. 其他
    默认状况下,WP提供了一个反垃圾插件很是有效。

个人觉得,两个系统都各有所长:

  • WP方便简单,很适合于个人网站的快速部署。DP功能很强,同时支持企业级的Pgsql,适合具有一定规模的网站。
  • WP很容易开发出一些小插件,但界面开发有一定难度,最好找个主题自己修改。DP可以很容易的进行大规模的模块、主题HACK且不会对系统做成太大影响,前提是你要对他有足够的了解。

,

  1. No comments yet.
(will not be published)