前面列举了几种开源的使用PHP开发的WCM,下面从以下几方面对最常用的Drupal、Wordpress和Joomla做一下比较。
- 安装难易度:包括程序的安装和数据库的安装。即从下载到正式使用期间的过程的开销。
- 学习难易度:包括系统的易用性、管理界面的可操作性以及其接口或扩展机制的学习难易度等。
- 会话管理:会话管理是指服务器对当前用户的各种状态的控制与存储。除了PHP原有的会话管理机制外,WCMS一般会扩展会话管理机制,以实现更强大的会话管理机制。例如Drupal实现了基于数据库的会话管理机制。
- 用户管理:是否支持多用户注册以及对用户的权限管理等。
- 可扩展性:如果系统允许并很好地支持开发者开发自己所需的功能,那么这个系统的可扩展性就比较强。开发者自定义的模块或组件可以轻松地发布并为他人所用,这也是可扩展性的另一个重要体现。
- 可伸缩性(Scalability):系统的可伸缩性包括纵向和横向两方面。纵向可伸缩性是指在同一个逻辑单元内增加资源来提高处理能力。例如通过硬件设备的增加(如升级为更强的CPU或扩大内存或存储空间容量)来增强其性能,支持更多的用户或获得更快的运行速度等。横向可伸缩性是指系统能够通过运行更多的程序实例或者采用分布式处理来增强处理能力。数据库集群、分布式文件系统、负载平衡都是提高系统横向的可伸缩性。
- 主题模板支持:主题模板的易开发程度,以及现有的主题模板的数量。
- XHTML/CSS:对标准的支持程度影响着主题模板的可编程性。
表1-1展示了上面提到的几个开源CMS系统特性的对比,5分表示程度最高。
表1-1 几个WCM的比较
|
Drupal |
Joomla |
WordPress |
安装难易度 |
3 |
5 |
5 |
学习难易度 |
3 |
3 |
1 |
会话管理 |
5 |
3 |
1 |
用户管理 |
5 |
5 |
1 |
可扩展性 |
5 |
3 |
3 |
可伸缩性 |
5 |
5 |
1 |
主题模板支持 |
5 |
3 |
4 |
XHTML/CSS |
5 |
5 |
5 |
抛开广告性的溢美之词,笔者认为选择Drupal的原因有以下几点。
- 免费:无须支付任何费用即可下载、安装、再开发以及部署。
- 更新较快:有很多著名的CMS,由于其更新速度慢,很长时间没有出新版本,致使大量的用户流失。而Drupal的更新速度非常快,推出的升级和补丁也比较及时,并且每年都有Drupal会议举办,让使用者对Drupal的未来很有信心。
- 专业:强大的CMS功能,使用了当今最流行的各种网站技术。Drupal比其他的WCM更适合于PHP的专家,因为它是一个框架级的WCM,有着丰富的API及完善的代码标准和风格规范。
- 丰富的第三方模块:在Drupal的官方网站上可以下载各种第三方模块以扩展其功能,如电子商务、内容处理、主题样式等各方面。
- 扩展性强:模块式架构和主题模板引擎,使功能和表现样式均可以无限扩展。