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

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

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

昨天受盆友邀请,写了一篇CMS分析的文章,想写一个技术专业点,但是技术专业度还是不足,就凑合一个,大家给我吧,不要批评我!

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

经常看到站长平台上有人提到选哪个CMS,最近51LA站长群里也有朋友问到PHPCMS和帝国CMS选哪个CMS的难题。所以,落叶今天从PHPCMS和帝国CMS对比的角度,谈谈站长们应该如何选择自己的CMS。

落叶自认为对现在流行的CMS和建站软件有足够的了解,刚从摸爬滚打的互联网技术应用出来并做了少量二次开发的CMS和建站软件有初期的动态siteweaver、DEDECMS、PHPCMS2008、帝国CMS、科讯CMS、安信CMS、丰讯CMS、DISCUZ、UCHOME、HDWIKI、云信CMS等。(之前的网站是siteweaver2*PHPCMSHDwikidiscuz7.0UCHOME搭建的行业门户网站,二次开发比较多,所以比较知名。对于其他CMS,经常有很多朋友问我各种CMS应用问题,所以我经常做一些测试和一些二次开发)。

从落叶的经验来看,在选择CMS的时候,站长一般会考虑以下几个方面:

1)程序进程是否安全稳定,是否会频繁出现bug?

2)应用程序流程不容易。

3)程序流形成的静态数据速率快吗?

4)流程模板有多少人,模板怎么做,标签怎么用?

5)程序流负载的工作能力强吗?

6)有多少功能模块,如房产控制模块、黄页控制模块、分类信息网络控制模块、问答控制模块等。

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

或者擅长二次开发,首先会考虑二次开发的协调能力,控制模块级别适合自己;但是单用户考虑到程序流程不好申请,模板标签不好做。所以CMS选择的重点是基于集中式二次开发的协调能力和模板标签的便捷性。

落叶所接触的CMS或者建站软件,现在大部分都是大家用的。其中PHPCMS以落叶更知名,二次开发数量最多。帝国CMS最近才采用是因为有盆友让我帮忙做一些帝国CMS的软件,做一些关键的改动。通过对比发现,PHPCMS和ImperialCMS在很多设计理念上是相似的,但看起来却是完全不同的设计风格。因此,落叶感觉很典型。

1。从二次开发的角度:

在我看来,PHPCMS(2008版)是一个开发框架,远非完美的商品。PHPCMS的二次开发依次搭建了五六个服务平台,从新发布的PHPCMS2008版到现在的PHPCMS2008sp4版(pcv9没评论,开发设计前期做了很多测试和建议,但我还没用过最新版本)。每次,我都会遇到同样的问题。我总是一边骂低级不准确一边改。现在官网已经终止了开发设计,很多刚发布的bug依然存在。尽管如此,PHPCMS仍然是首选的CMS。为什么?那就是它非常方便。你可以随心所欲的设定,想起来就能保证。我觉得PHPCMS的意思是一个极端,就是如果主要考虑二次开发,那么PHPCMS是一个非常好的选择。

在PHPCMS中,如果要完成所有数据信息的加载,只需写一个SQL,然后在模板中启用GET标记即可。如果觉得模板中的解决方案不足,只需要在PHP文档中做一些同名的解决方案即可。甚至,只需要在头文件顶部引入common.php文件,启用模板引用函数引入模板,然后构建一个与模板同名的HTML文档,基本上就可以完成PHPCMS中很多想要的功能。

帝国CMS,虽然官网上的宣传词可以靠记忆来保证,但是从我现在还在对帝国CMS和软件开发设计做一些简单的改动来看,帝国CMS远不是靠记忆就能保证的。受限于帝国开发设计的思路,就帝国的关键程序和流程而言,有些功能即使不显著,也必须交给民众。就拿一个简单的请求来说,“我认为不可能得到内容页面的分页查询次数,从而根据不同的分页查询完成一些不同的显示信息。”为什么?第一,他没有这个标签,他没有显示任何自变量。社区论坛很多人提到这个要求,从头到尾都处理不了;二、帝国模板标签分析法是老的动态逻辑思维,即程序进程先求解每个标签的结果,连HTML都带着,然后把数据库查询中存储的模板读出,把里面的标签一个个替换掉。内容页的标签大部分都是由一个专业的处理方法完成的,耦合度太高,所以大部分代码都不能通用。(现在流行的模板模块都是先编译标签分析程序,然后缓存文件。标签早已成为可执行的PHP程序流,然后程序执行完数据信息后立即启用模板缓存文件,实现了。标签都是按照一个统一的方法解决的,比较实用。)而且也正是因为每个标签都包装的非常好,做的非常细致,所以贴起来也比较简单稳定。如果按照提示放进去,不容易有什么问题,所以帝国在安全系数、可靠性、便利性方面都非常非常好。

比如有个笔友(http://www.pmume.com)用帝国CMS做精品故事网,想一页一页的完成标题的导航栏,如下图所示。


我看过,帝国社区论坛也有很多朋友有这个要求,但是基金会也没看到什么很好的待遇。然后我看了帝国的标签的代码,它居然嵌入了内容页的分页查询来下拉导航栏标签。原程序流程的逻辑思路是将数据信息从模板中分离出来,处理好数据,将其他表达式(下拉框或普通文本目录)交给模板来求解。但是,在帝国中,都是通过关键函数来解决的。这个标签是通过在functions.php和t_functions.php文件中独立编写函数来解决的,HTML封装的很好,展示给大家。为了更好的完成内容页的分页和标题导航条目录的查询,我把这两个核心文档做了改动,模仿他标签的完成方法。事实上,在其他CMS中,如果文章内容的分页查询主题先在PHP文档中解析,并记录为自变量数组,那么在模板中选择循环系统标签circularsystem,随心所欲的呈现就可以了。(详情:http://BBS.chinaz.com/CMS/thread-2020475-1-1.html)。

CMS和PHPCMS一样,具有自定义实体模型的功能。在字段名自定义层面上,Imperial使其更加个性化,更适合初学者应用。但是PHPCMS在功能上没有问题,有些设计方案不太合理,比如只用辅助表定义字段名(PCV9已经改进)。帝国CMS中的每个实体模型都是一个独立的数据信息主表和子表。不同实体模型之间没有关系,数据信息ID无关。那种问题是不同的实体模型有相同的ID内容。涉及到全站数据信息的实际 *** 作时非常担心,要一个一个区分实体模型。今天设计一个帝国CMS软件的时候,深深感受到了那个设计方案的餐具。PHPCMS的所有实体模型使用同一个主表,辅助表分别应用,即所有文章无论实体模型的标题、简介等信息内容都存储在一个统一的表中,全站启用数据信息非常方便,缺陷也非常明显。如果自定义字段名只放在辅助表中,如果要作为启用数据信息的标准或者检索标准,那就很餐具了,需要两个表联合查询,放整篇文章。

简而言之,有了那个适中的PHP水平,我们就可以用PHPCMS毫不费力的设计方案,创建各种实体模型,包括房产模型、问答实体模型、模型车等。如果我们知道实体模型的字段名是什么,怎么做,后台管理就会建立实体模型,然后复制list.php和show.php,做一些个性化的修改,然后提交HTML文档模板。想要伪静态,就需要伪静态。如果要形成静态数据,就需要形成静态数据。如果用帝国进行二次开发,也可以在后台方便地管理自定义实体模型表的建立,但是数据信息stepsolution级别的协调能力要少很多。在应用了他的数据信息实 *** 课之后,需要知道他的模板解级,加载模板,然后简单的写涵数来代替自变量标签。如果要形成静态数据,他原来的内容页的静态数据生成功能是不能通用的,需要简单的写一个静态数据形成类。一句话,疼!还不如自己一个人全写PHP。

以下是新浪微博中落叶的一些简短评论:4月10日10:52。

落叶:从今天开始,我认真学习#帝国CMS#,一直在帝国备份数据王,但是从来没有细腻的应用过帝国CMS。帝国CMS的基本印象:1。帝国CMS似乎延续了两年前流行的ASPCMS的设计风格,类似于动态变化,尤其是在模板关联和标注上;2.后台管理实体模型的自定义级别与PHPCMS类似,但比PHPCMS更精致。

4月10日10点58分

落叶归根:其实早期安装#帝国CMS#是为了测试,但从头到尾都不是用来宣布一个网站建设的:1。后台管理和老款ASPCMS太像了,但是我和ASPCMS的老款设计风格冲突;2.在数据库查询中记录模板:偏爱PHP的人应该立即将模板存储为HTML文档,这样变化检测会更方便,数据库查询中存储的每一个变化和存储都有一个自我暗示——“能不能不成功?”

4月10日,11:02

落叶:ASPCMS中的大部分模板都存储在数据库查询中。在更改模板提交时,由于安全限制、服务器配置和IDC敏感词过滤,一些代码经常提交不成功。所以这种CMS在个性化改变上并不方便。ASPCMS中的充要条件是科讯CMS,它选择了PHP的思想来关联HTML文档存储的模板,而PHPCMS中的#ImperialCMS#是用数据库查询记录模板的充要条件。

4月10日,11:04

落叶:#帝国CMS#根据我的工作经验,我用HTML记录模板,然后后台管理关联的好处取决于:1。提交时不担心模板被破坏或网上更改,所以无法取消;2.要改模板,马上免费FTP下载原模板,重命名后提交,后台管理关联。这个#PHPCMS#似乎是最灵活的。可以随意为所有渠道的所有网页定义人性化的模板,但实际 *** 作只是免费下载--“重命名--”更改--“提交--”

4月10日11点11分

落叶:#ImperialCMS#和DEDECMS更像是制成品,#PHPCMS#更像是架构,启用了单理论标签:Imperial和DEDECMS的很多嵌入式标签都局限于特殊的控制模块或通道,它们的包装很详细。优点是好用,缺点是不灵活;PHPCMS更适合程的构想。一旦获得SQL,就可以使用GET标记SQL立即查看模板。非常方便人性化的开发设计。试图从帝国万能标记中找到GET标记的身影,但失败。

2。从程序流程可靠性模板标签的方便性来看:

PHPCMS中的标签都是由程的逻辑思维完成的。首页和目录页上的tag和GET标签都形成SQL语句,分析后形成若干含义。页面的标签完成为自变量,即PHP *** 纵文档加载数据库查询中的数据信息,并根据字段名的类型将其解析为干净整洁的数据信息,放入自变量中。然后将这个自变量立即应用在PHP内容页面模板中,无论是判断还是推理,或者进一步用数字求解,都更符合程的逻辑思维。然而,单个用户使用它可能会很痛苦。换一个模板需要了解PHP的思维逻辑和SQL语句。从PHPCMS中一些控制模块明显的BUG残留,其实可以分辨出这些控制模块的基础,有些人很少用。(自然,PCV9应该会有很大的改进,这里就不讨论了。)帝国CMS中的标签被认为是传统定义中最纯粹的标签。很像动态易(ASP类的CMS)的标签解逻辑思维。这个标签是什么意思?然后,程序执行后,会立即整体替换。用起来很方便,帝国在关键点上做的很棒。所有可以应用的标签都被小心地标注在模板的底部。站长朋友们只要按照提醒贴上标签就可以了,方便又舒服。那样,有缺陷的标签只是标签,不是整齐的数据信息,解决起来也缺乏人性化。虽然ImperialCMS模板也适用于PHP,但是因为他的模板生成方法并不是先把自变量解析成PHP,然后再求解,而是先求解标签的数据信息,在形成的时候再改变,所以局限性也很明显。上面说的优秀故事网是帝国CMS做的,原文里特别推荐。因为这位朋友并没有把所有的程序都看懂,所以帝国CMS在网站上做的很棒,这也说明帝国CMS在关键点上做的很棒。上面空有很多字。其实基本意思只有两个:二次开发不需要太多笔友。帝国CMS的应用后期会相对好一些,而对二次开发有较多规定,熟悉PHP的笔友完全可以把PHPCMS作为框架来应用。BUG不是问题,那样改会很酷。我最怕的是写出来的东西像帝国的死了,无法改变。文章内容中的重点自然是帝国CMS和PHPCMS,似乎忽略了应用DEDECMS的同学。就完成度而言,我遇到的站长朋友还是用DEDECMS居多。该CMS的可靠性和方便性接近于ImperialCMS和PHPCMS。落叶这里只分析两个极端,希望能给朋友们一些提醒。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/772912.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存