PHPCMS和帝国CMS二次开发优缺点分析及站长如何适合自己的CMS 推荐

帝国CMS
首页、封面页、自定义页面等用SQL调用或者PHP调用信息时,帝国CMS本身无法实现分页,那么是否可以分页显示呢?答应是肯定的,利用JS分页插件即可实现分页功能。

作者:落叶(lyrs.net) (t.qq.com/guohui )

第一步:在模板页面/head前引入JS文件,也就是加入 SCRIPT src=/16css.js
type=text/javascript/SCRIPT

经常见站长论坛有人提到选哪个CMS好,最近也又有朋友在51LA站长群里问到PHPCMS和帝国CMS比较选哪个好的问题,所以落叶今天从PHPCMS及帝国CMS对比的角度来谈谈站长应该如何选择适合自己的CMS。

第二步:正常方式调用信息,万能标签,灵动标签,SQL调用,PHP调用都可以。

落叶自诩对现在主流CMS及建站程序还是有足够多了解的,从接触混互联网开始使用过的并且作过小量二次开发的CMS和建站程序有早期的动易siteweaver、DEDECMS、PHPCMS2008、帝国CMS、科讯CMS、无忧CMS、风讯CMS
、DISCUZ、UCHOME、HDWIKI、新云CMS等(以前负责的一个网站是Siteweaver+2*PHPCMS+HDWIKI+DISCUZ7.0+UCHOME搭建的行业门户,二次开发比较多,所以相对比较了解,至于其它CMS因为常有很多朋友向我问到各种各样的CMS使用问题,所以我也常做一些测试和一些小量二次开发)。

但是调用信用一定要用li/li,如:

从落叶的经验来看,站长在选择一款CMS时,大概一般会考虑如下方面:

li a href= [!--titleurl--][!--title--]/a/li

1) 程序是否安全稳定,会不会经常有BUG

完整代码如下:

2) 程序使用简不简单

ul id=list style=display:none;[ecmsinfo]2,20,30,0,0,13,0[/ecmsinfo]/ulul id=list2/ulSCRIPT src=/16css2.js type=text/javascript/SCRIPT

3) 程序生成静态速度是否够快

这些位置不能改变,只要在 ul/li中添加调用就行了。

4) 程序模板多不多,模板好不好做,标签好不好用

这样就搞定了,如果想要修改每页显示条数,可修改16css2.js文件

5) 程序负载能力强不强

来个演示图:

6)
程序模块多不多,如有没有房产模块、有没有黄页模块、分类信息模块、问答模块等

澳门新葡亰3522平台游戏,下载地址:

7) 程序二次开发是否灵活

分页功能.zip 60b1b023bed74314603d893d7e7b175d.zip(2.75 KB)

擅长或喜欢二次开发的基本首先会考虑二次开发的灵活性,及模块方面有没有适合自己的;而普通用户则更多的考虑程序易不易于使用,模板标签简不简单,所以CMS选择的焦点基本集中的二次开发的灵活性和模板标签的易用性两方面了。

感谢帝国CMS论坛用户guzhiwei分享。

落叶接触到的这些CMS或建站程序,也基本上是大家现在用的比较多的,其中PHPCMS是落叶最为熟悉的,二次开发最多的,而帝国CMS也只是最近因为有朋友要我帮忙使一些帝国CMS的插件和进行一些细节修改,所以才用到,对比发现PHPCMS和帝国CMS在很多设计思路上比较相近,但又似乎完全是两种不同的风格,落叶觉得比较典型,所以以这两款CMS来作对比分析。

1.从二次开发的角度来讲:

在我看来,PHPCMS(2008版)更多算作是一个开发框架,离一个成熟的产品太远,先后使用PHPCMS二次开发搭建过五六个平台,从刚发布的PHPCMS2008版,及现在的PHPCMS2008
sp4版(pcv9不作评价,开发初期做过较多的测试、反馈过一些建议,但正式版我并没用过),每一次我都会遇到同样的问题,总是边骂低级错误边作修改,到现在官方停止开发了,很多刚发布时的BUG都还存在。虽然如此,PHPCMS仍然是首选的CMS,为啥,就是他很灵活,想怎么改就可以怎么改,想到即可以做到。在我看来PHPCMS代表了一种极端,即如果首要考虑二次开发,那PHPCMS是不错的选择。

PHPCMS中想实现任何数据的读取只要写一条SQL,然后面模板中GET标签调用下就行了,如果觉得模板中处理的不够,那么只需要在对应同名的PHP文件中作些处理就行了。甚至,只需要在头部引用common.php文件,调用模板引用函数引用模板,然后建一个同名的HTML文件作为模板,即可在PHPCMS的基础上实现很多想要的功能。

帝国CMS,虽然官方的宣传语也是想到即可做到,但从我在对帝国CMS作一些简单功能需求的修改及插件开发来看,帝国CMS离想到即可做到太远,限制在帝国的开发思路之下,有些功能即使是很小的功能,也需要对帝国的核心程序大动干戈。就拿一个简单的需求“我想获取内容页分页的页码,以根据不同的分页来实现一些不同的显示”,这个需求的后面不谈,单就获取内容页分页的页码来讲,几乎是不可能,为啥呢?第一,他没有这个标签,也没有提供变量,论坛里很多人提到这一需求,始终无法解决;第二,帝国的模板标签解析方式是老的动易的思维即程序先处理好每一个标签的结果,连HTML都带上了,然后把存储在数据库中的模板读出来,把里面的标签一个一个替换,基本上内容页的每一个标签都是经过了一个专门的处理过程来实现,耦合度太高,大部分代码都没法通用。(现在主流模板引擎都是先把标签解析编译好,然后缓存,标签已经变成可执行的PHP程序,然后程序处理好数据后直接调用模板缓存,执行。标签都是通过统一的方式来处理的,通用性较强。)而也正因为每个标签都封装的很好,做的很完整了,所以使用起来又非常简单稳定,只要按提示放上去,就不会有问题,所以帝国在安全性、稳定性、易用性又非常不错。