帝国、PHPCMS及织梦三款CMS比较

早期的文章管理系统,数据表字段模型都会内置好,按自己的思路,把文章模型、信息模型、图片模型都内置,然后用户根据需要,在设置栏目时选择不同的模型,实现不同的需求。然而这种内置模型字段的方式,不能很好的满足站长的各种个性化需求,所以各种CMS都推出了自定义模型和自定义字段的功能。

对于PHP程序员来讲,自定义模型实际是在数据库中建立一个新的数据表,然后添加不同的字段来记录不同的数据,自定义字段功能,即在原有数据表中添加新的字段,或者在附加表中添加新的字段,然后根据数据模型进行数据写入、数据查询读取、数据在模板中的展示操作。而CMS的模型自定义功能,则是把这一系列操作内置,流程化,自动化,建立模型,选择不同的字段类型建立字段,根据不同字段类型,自动生成后台数据录入界面和前台数据展示页面。站长不需要编程知识即可很方便的根据自己的需求,设计不同的数据模型,更加方便站长个性化建站。同时,懂PHP编程的站长,除了能够很方便的建立各种模型外,省去了数据录入和数据查询展示的重复操作环节,专注于个性功能的开发,能够更快更好的制作各种各样的功能模块。

前面部分说到了自定义模型的优势,那本文下部分主要从自定义模型流程对比、自定义字段字段类型对比、自定义字段选项对比(主表副表、前台投稿、设置权限等)三个方面。

详细对比分析下帝国CMS、PHPCMS、DEDECMS,这三款CMS的优缺点。

1. 自定义模型流程对比

在CMS中自定义模型,我们一般最期望实现的两点是1)在数据库中建一个表,并且可自由设置表中有什么字段;2)建好字段后,后台数据添加表单能自动生成,前台数据展示直接能通过标签调用,而不需要自己写读取数据的PHP代码。

那么这三款CMS中是怎样满足我们的这两点期望的呢?

按照帝国CMS的官方提示,帝国CMS自定义模型一般步骤为1)系统分析、2)建立数据表、3)建立字段、4)建立系统模型。

帝国自定义模型的创建步骤实际为先建立一个数据表,然后建立字段,每一个字段类据类型等作详细设置后,再整体控制各个字段的用途及前台后台数据录入界面的格式即建立系模型。建立系统模型的过程实际是对数据字段在模型中所扮演的角色和权限的分配过程,如是否作为录入项、是否作为投稿项、是否可增加、是否可修改、是否作为结合项等。

按帝国的思维,建表和建字段只是完成了建数据库的操作,而系统模型建立的过程则为规划数据库如何使用的过程。

PHPCMS中添加自定义模型只有两步,先建立模型,然后添加字段。在添加模型的过程中不仅完成了一般意义上的建数据表的工作,同时,也完成对模型的一些初始化设置,如模型中的数据是否生成静态,栏目页、列表页、内容页的模板及URL规则等。

添加完模型后,会自动生成一部分字段,可对这些字段作修改或删除处理,同时可以自由增加字段。

PHPCMS中自定义模型建立字段时除了选择封装好的字段类型外,也整合了对字段属性的设置,如是否在前台投稿中显示、是否作为标签默认读取字段、是否作为标签调用排序字段等。

DEDECMS中自定义模型建立亦分为两步完成,建数据表作初始化设置然后添加字段。添加模型时可选择模型是自动模型、系统模型还是独立模型。独立模型可突破原来的主表+副表的模式,方便小数据量的灵活处理。

从三款CMS的自定义模型流程对比来看,帝国CMS的属性设置相对更为细致但似乎简洁性不够,很多描述过于专业或者不够明确,站长朋友们需要看较多帮助文档才能了解到每项的意思,而PHPCMS和DEDECMS中则相对简洁,一目了然知道每一项的涵义;PHPCMS和DEDECMS在建立模型表的同时完成了对模型的初始化设置,整个设置是针对整个模型的,与具体字段无关,属全局性设置,而帝国CMS中模型的设置则是整合了对字段的整体操作,在建好字段之后,细化到对字段的细节控制,属“微观调控”。

帝国CMS中能够单独设置字段的前台后台展示模板,相对更为灵活些; PHPCMS中则由于字段类型是以组件形式封装的,前台后台数据录入界面自动生成,简便,但在某些时候需要自定义部分字段的表单HTML时只有在模板中使用逻辑判断才能实现,灵活性稍缺乏。DEDECMS模型设置和PHPCMS类似,DEDECMS这块的优势在于可以选择数据模型是主表+副表的模式还是独立表模式,并且可以自由设定前台后台的数据处理PHP文件,方便二次开发。

按我的经验来看,帝国CMS这块的设置虽然很细致,但实际把问题复杂化了,据观察,帝国CMS的用户自定义模型的深度用户并不多。实际按照PHPCMS和DEDECMS的思路,建模型数据表的同时,对模型作一部分全局设置,然后单个字段中根据不同字段类型及不同需求作细节设置,这样的流程更直观更方便。

另外,PHPCMS中自定义模型后可直接预览模型的数据录入界面,方便查看字段设置的效果,这点非常方便。

所以,从自定义模型细节易用性对比来看:DEDECMS>PHPCMS>帝国CMS。

2.字段类型对比:

CMS中自定义字段有一个很好的优点就是都封装好了一些常见的字段类型,建立字段的同时,直接设置好了字段对应的表现形式,选择不同的字段类型,在会员中心投稿表单界面、后台数据录入界面及前台数据展示界面中都会有所不同,并且是自动呈现。举个例子,如果是PHP程序员需要实现对文章内容的存储,除了需要在数据库中添加一个字段外,还需要在数据录入表单中添加一个textarea,同时还要引用一些编辑器如fckeditor等。过程比较费事,并且存在许多重复性劳动。而如果在PHPCMS或者帝国CMS中实现这一需求,则只需要在建立字段时选择“编辑器”字段类型,在DEDECMS中也类似只需要选择“HTML文本”类型的字段即可。因为CMS的字段类型都将各种不同的字段进行了封装,添加字段时直接选择,然后自动生成的数据录入界面中和前台数据展示界面中,程序都会根据字段类型作一些处理,然后自动输出。(PHPCMS中生成表单界面时会调用input_form相关的类根据字段类型进行处理,在输出数据前,会调用output_form相关的类根据不同字段类型对数据进行处理)。

帝国CMS的字段类型
PHCMS的字段类型
DEDECMS的字段类型
单行文本框(text)
密码框(password)
下拉框(select)
单选框(radio)
复选框(checkbox)
多行文本框(textarea)
编辑器(editor)
图片(img)
FLASH文件(flash)
文件(file)
日期(date)
颜色(color)
选择外表关联字段(linkfield)
下拉外表关联字段(linkfieldselect)
单行文本
多行文本
选项
数字
编辑器
日期和时间
颜色和字型
图片
多图片
文件
镜像下载
多文件上传
栏目
类别
地区
标题
作者
来源
关键词
会员组
会员ID
推荐位
模板
转向链接
分页选择
视频
联动菜单
单行文本(varchar)
单行文本(char)
多行文本
HTML文本
文本保存HTML数据
整数类型
小数类型
时间类型
图片
图片(仅网址)
多媒体文件
附件类型
使用option下拉框
使用radio选项卡
Checkbox多选框
联动类型

从上表可见PHPCMS中字段类型的的丰富程度和实用性是明显优于帝国CMS和DEDECMS的。DEDECMS字段类型稍多于帝国CMS。

即:PHPCMS >DEDECMS>帝国CMS。

3.自定义字段属性选项对比:

有些时候设置的一些字段,我们希望只有管理员才能设置该字段的值;有些时候,添加的一些字段,我们希望能够方便和标题摘要一起在文章列表中调用;有些时候,添加的一些字段,我们希望这个字段添加后不能再被修改;有时些时候,添加的一些字段,我们希望实现只在后台数据录入界面中显示,而在前台投稿中不显示……这时候,灵活的字段属性选项,显得尤为重要。

那么这三款CMS中的字段属性有哪些差异?哪个最能满足用户的需求呢?

1)自定义字段是否可选择是否存在主表还是副表?

PHPCMS2008和DEDECMS的自定义字段只能添加到副表中,帝国CMS自定义字段则可选择是添加在主表中还是副表中,这样的好处在于,自定义字段可以方便作为数据调用条件和查询条件和在文章列表中调用,而如果单纯只加在副表中,一旦涉及到数据联合查询,效率会低很多,并且即使是简单的标题+摘要+自定义字段显示的文章列表中都非得多表联合查询,人为增加SQL查询复杂度,降低效率。很典型的问题是在涉及到联动筛选的情况时,自定义字段如果不能选择存储在主表中,会人为制造非常大的麻烦。

如上图所示的,联动筛选字段(帝国CMS和DEDECMS中称作结合项),如果是想要用PHPCMS2008和帝国CMS来自定义,售价、面积、户型等自下义字段,只能添加在副表中,结果是非常痛苦的,每个条件的查询都要主表和副表同时查询,并且查询条件分期在主表中和副表中时,要同时满足条件,非得join查询。 如果涉及排序等,更是头痛,反正是人为自找麻烦。如果能选择直接把字段字义表主表中,这样,这类数据量存储不大的字段,不会明显增加主表的负担,但查询和读取都直接是单表操作,非常方便。帝国CMS中这点做的比较不错,并且有提供了单独的结合项功能。DEDECMS中貌似也有结合项功能,适用于多条件筛选的情况。

所以,这一点,帝国CMS>DEDECMS>PHPCMS。

2)字段的权限设置

有些字段,只希望在管理员或者编辑人员在编辑信息时才能设置,普通用户不给设置权限,这就需要给自定义字段一个完整的权限系统。这一点PHPCMS中做的非常不错,可以直接能过勾选“不允许设置该字段值的会员组”的选项来实现。帝国CMS中最后一步“系统模型建立”中“可增加”、“可修改”这几项似乎有权限设置的影子,只是实现了部分权限功能,而DEDECMS中则没有看到明确的字段权限设置选项。

所以,这一点PHPCMS>帝国CMS>DEDECMS。

3)不在前台投稿中显示

有些时候设置某些字段,虽然普通会员也可以有给他赋值的权限,但是不需要或者不想在前台投稿中显示(如摘要等,有时候想简单点,只让用户发个标题和内容),所以很需要实现某个自定义字段只在后台编辑时可以填写,而在前台投稿界面中不自动显示。关于这点,在PHPCMS中只需设置“是否在前台投稿中显示”项为否即可,DEDECMS中字段选项中“前台参数”项中的“前台投稿及采集规则禁用本字段”亦实现了这一需求,至于帝国CMS中,可以通过系统模型设置是否为录入项实现,但似乎不够直观。

有时候,在使用PHPCMS自定义字段时,不希望字段在前台投稿中显示的另一个原因是,想对添加的一部分字段的表单样式作单独的修改或者作一些JS处理,PHPCMS内置的字段样式不太够用或者不太方便,所以在设置字段时选择不在前台投稿中显示,然后在模板中按需求手动添加这个字段的表单项,这一点在DEDECMS中有自定义表单HTML项,不需要像PHPCMS中这样变相实现字段HTML项的定义,帝国CMS中添加自段时有提供定义前台后台录入数据表单HTML的设置项,但他同时写出了提示“增加字段时请留空”,这个做法不太理解,不过,他在进行系统模型定义的最后一步可以统一设置每个字段的前后台数据录入界面表单HTML。不过,DEDECMS和帝国CMS中的字两项设置对普通新手用户可能反而带来疑惑,对熟悉二次开发的倒是挺方便的。

从这个小点来看,普通用户PHPCMS>DEDECMS>帝国CMS,二次开发DEDECMS>帝国CMS>PHPCMS。

关于帝国CMS、PHPCMS、DEDECMS这三款CMS自定义模型功能,实际还有很多值得对比分析的地方,都各有优缺点,实现应用中总会有感觉很爽的地方,同时也会有很纠结的地方,在这些方面我是深有感触的。

当然,本文并不在绝对的得出哪款CMS更好,哪款CMS不好的结论,只是根据自己实际使用的感触作一些简单的对比分析,上面对比的谁优于谁也只是基于我个人的感受,具体不同层次的用户依个人习惯可能感受不同,希望能给朋友们一些参考。


  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
<p>在帝国软件官网创建15周年之际,帝国CMS7.5版发布了。帝国CMS经历过18个版本更新,7.5是第19个版本。我们一直不断在实践中突破创新,帝国CMS7.2版在移动互联实现与全面安全防御实现突破创新,让网站发展无后顾之忧。而帝国CMS7.5版则是全面完善,功能更加强大实用,做精品中的精品,只为让您用上更放心、更省心的产品。在原来7.2版本的基础上更加完善,打造更完美的产品。安全稳定的程序为网站发展与壮大提供更加可靠的保障!</p><p> </p><p>帝国CMS 7.5版新增了:</p><p>多访问端升级:支持在主端后台刷新生成各访问端静态页面,多访问端用静态模式下使用更方便。</p><p>多访问端升级:支持任意切换各访问端后台,无需重新登录,多访问端管理超方便。</p><p>多访问端新增静态页面同步功能,支持多端定时同步、双端实时同步。</p><p>多访问端支持设置子端是否开启后台权限,更高安全性,维护更方便。</p><p>后台支持直接修改模板ID,方便使用多访问端功能模板ID不一致处理。</p><p>动态页面新增支持缓存,让采用动态页面模式的网站访问速度更快,效率更高。</p><p>新增对PHP7.*系列运行环境的支持,兼容性更好。</p><p>针对信息访问、下载等权限进行升级,新增“访问组”这一新概念,控制会员访问权限更细、更灵活、更实用。</p><p>新增会员内部组,方便对会员进行内部分类,客户管理更方便。</p><p>新增会员管理组和会员管理员设置,为以后前台管理员和客服系统管理员设置打下基础。</p><p>后台新增浏览器USER-AGENT验证功能,更高安全性。</p><p>新增支持HTTPS传输协议,更安全。</p><p>COOKIE安全设置升级,更上一台阶。</p><p>后台认证码新增预加密验证功能,超安全。</p><p>编辑器升级为CKEditor编辑器,兼容性更好、功能更实用。</p><p>支持自定义后台登录文件,安全性更高。</p><p>“来源HASH验证”功能升级,防护更强。</p><p>来源地址新增严格模式验证,更严谨,防护外部提交更严格。</p><p>TAGS功能升级,更完善。</p><p>各系统模型新增记录信息审核人功能,对查看责任人和绩效考核更方便。</p><p>视频播放器更新,做视频站更方便。</p><p>自定义工作流功能升级,更完善。</p><p>会员充值有效期升级,更完善。让网站内容商业化更顺畅。</p><p>栏目新增单页内容设置,直接用栏目做公司简介、联系方式等单页更方便。</p><p>对WAP模块进行升级,做展示类手机站更方便。</p><p>采用全新的日期时间和颜色选择模块,更方便。</p><p>用户发布信息统计升级,统计项更详细。让管理员更方便的查看编辑发布绩效。</p><p>采集功能升级,更灵活。</p><p>备份系统升级,兼容性更高。</p><p>验证码功能升级,更有效防止灌水机。</p><p>系统模型新增发布后和修改后处理函数扩展。</p><p>DIGG顶功能升级,可依网站实际情况设置,更实用。</p><p>栏目列表式页面新增支持附加SQL条件设置,可依特殊情况设定栏目列表显示特定的信息,更个性化。</p><p>信息头条和推荐级别由原来支持的9级头条和9级推荐,升级为最大支持255级头条和255级推荐,组织信息更灵活。</p><p>新增更多一键关闭模块功能,将网站不需要的模块关闭更方便。</p><p>支持设置某些会员组才能拥有会员空间。</p><p>后台信息发布限制可设置更严格,对网站内部管理员要求安全性更高的可以增加限制。</p><p>针对后台内部管理员操作的安全性完善更新。</p><p>专题子类支持自定义文件名,让页面更个性化。</p><p>支持限制单个栏目单个会员发布信息数。</p><p>新增详细管理会员列表功能,审核内容更方便。</p><p>新增更多安全特性,系统更牢固。</p>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值