帝国CMS7.0使用常见问题小结

一、有效期 设定分类信息,通常要设定有效期,如:此信息还剩N天
。等等。且大家都在找如何让有效期能根据判断实际,显示天数和是否过期。下面我在分享一下具体操作1、在分类信息模型里的管理字段中新增字段:
字段设置为: 字段名:enddate (这个是例子,可自定) 字段标识:自定
字段类型:小型字符型(TEXT) 长度留空即可
输入表单显示元素:日期(date)长度也留空即可 * 其它不选不填 。(字段顺序
填数字。可自定,是添加信息与投稿的显示前与后的关联)2、记得在分类信息中管理系统模型中重新点修改一下。
打上:录入项 搜索项 投稿项 必填项 列表模板 内容模板 可增加 可修改
等的勾(这个可根据自己要求。如要采集,有此项的话,请在采集项打下勾)。3、在分类信息内容模板页
中适当的位置添加以下代码:(灵动标签SQL根据需要可更改) 开始

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

 一、7.0版本的数据库配置文件是哪个文件?

澳门新浦京娱乐游戏,有效期:

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

7.0版本数据库配置文件:/e/config/config.php
6.6及以下版本数据库配置文件:/e/class/config.php
 
 
二、忘记后台登陆认证码怎么办?
查看 /e/config/config.php
文件里的“$ecms_config[‘esafe’][‘loginauth’]”变量内容。
 
 
三、不想显示后台的“商城”菜单,如何操作?
答:后台>系统>系统参数设置>模型设置:“关闭后台菜单”项勾选“商城”即可。
 
 
四、更换了栏目目录地址,为什么信息页地址不更新?
答:因为7.0直接将地址存在数据库里,所以更换目录规则后,需到:后台>系统>数据更新>更新信息页地址:更新数据表中的内容页地址。(注:看左侧菜单,非“数据更新中心”页面里)
 
 
五、如何关闭动态页面模板在线修改
答:如果不想开启在后台修改动态页面模板,可以修改 /e/config/config.php
文件里的“$ecms_config[‘esafe’][‘openeditdttemp’]”变量值为0。
 
 
六、专题评论表单
答:专题评论访问地址 /e/pl/?doaction=dozt&classid=专题ID
专题的评论表单需增加:<input type=”hidden” name=”doaction”
value=”dozt”> <input type=”hidden” name=”classid”
value=”专题ID”>
 
 
七、为什么“更新专题”页面不显示专题?
答:因为“更新专题”页面是为没有管理专题权限的用户而设计的单独管理专题功能。管理员可以在增加专题时设置“可更新专题的用户”,这样即使没有管理专题权限,也可以在更新专题页面对专题进行管理与更新。授权更方便。
 
 
八、为什么评论页的评分功能不能使用?
答:如果是要使用评分功能的模型,要往模型数据表增加“infopfen”(评分数)和“infopfennum”(评分人数)两个字段,详细操作步骤:
    后台>系统>管理数据表>管理字段>增加字段:
   
评分数字段:字段名填“infopfen”、字段标识填“评分数”、字段类型选“大数值型(INT)”,其他默认,点提交;
   
评分人数字段:字段名填“infopfennum”、字段标识填“评分人数”、字段类型选“大数值型(INT)”,其他默认,点提交;
    两个字段增加后模型即可使用评分功能。
 
 
九、7.0版本如何调用专题的信息?
答:调用专题的信息要改用“索引灵动标签”(e:indexloop)调用。
[e:indexloop={索引分类ID,显示条数,操作类型,栏目ID,系统模型ID,附加SQL条件}]
模板代码内容
[/e:indexloop]
 
 
十、如何调用专题的推荐信息?
答:“索引灵动标签”的“附加SQL条件”设置:
    所有推荐信息用:’isgood>0′
    二级推荐的信息用:’isgood=2′
 
 
十一、如果栏目的信息数显示不对,如何处理?
答:可以到后台>系统>数据更新>数据更新中心>更新栏目信息数。
 
 
十二、多值字段如何调用?
答:多值字段存放方式:多个值之间用“||||||”分隔、值里的各个选项之间用“::::::”分隔。下面为内容模板中显示多值字段例子:
<?php
$morefr=explode(‘||||||’,$navinfor[字段名]);
$mfcount=count($morefr);
for($mfi=0;$mfi<$mfcount;$mfi++)
{
$morefrf=explode(‘::::::’,$morefr[$mfi]);
?>
选项1:<?=$morefrf[0]?>
选项2:<?=$morefrf[1]?>
选项3:<?=$morefrf[2]?>
选项4:<?=$morefrf[3]?>
……
<?php
}
?>
 
 
十三、“信息处理结果反馈给会员”在哪儿设置?
答:修改信息就可以看到设置选项。
 
 
十四、为什么用SQL调用不能加“checked=1”条件?
答:因为7.0版本的待审核信息与发布信息单独表存放,所以调用前台信息不再需要checked=1条件,效率更高。只需将此SQL条件删除即可。
 
 
十五、专题页面有哪些PHP变量?
答:当前专题ID或当前专题子类ID变量为“$GLOBALS[‘navclassid’]”。
当为专题子类页面时,则所属专题ID变量为“$GLOBALS[‘navinfor’][‘ecmsbid’]”,当等于0时就是专题页,更容易识别专题页与专题子类页。
 
 
十六、刷新所有信息内容页面时提示“Table ‘*.phome_ecms_news_data_’
doesn’t exist”
答:原因是数据本身有问题,信息索引表phome_ecms_表名_index有不存在ID的记录。
解决办法:进数据库删除索引表中不存在的ID记录即可解决。也可以在数据更新最下面清理

[e:loop={'select * from [!db.pre!]ecms_info where checked=1 order by newstime desc,id desc limit 1',1,24,0}]?php$enddate = explode(-, $bqr[enddate]); //enddate为字段名。如果有改,请更改全部。我已描蓝了。$newstime = explode(-, $bqr[newstime]); // 发布时间,格式为:Y-m-d H:i:s$lt = mktime(0,0,0,$enddate[1], $enddate[2], $enddate[0]); $st = mktime(0,0,0,$newstime[1], $newstime[2], $newstime[0]); $overtime=$lt - $st;$days=$overtime /86400;if($days0){echo 此信息已过期; //建议可换成图片形式}else {echo 此信息还剩 bfont color=red.$days./font/b 天; // CSS自定}?[/e:loop]

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

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

  1. 自定义模型流程对比

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

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

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

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

澳门新浦京娱乐游戏 1

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

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

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

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

澳门新浦京娱乐游戏 2

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

澳门新浦京娱乐游戏 3

从三款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查询复杂度,降低效率。很典型的问题是在涉及到联动筛选的情况时,自定义字段如果不能选择存储在主表中,会人为制造非常大的麻烦。

澳门新浦京娱乐游戏 4

如上图所示的,联动筛选字段(帝国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不好的结论,只是根据自己实际使用的感触作一些简单的对比分析,上面对比的谁优于谁也只是基于我个人的感受,具体不同层次的用户依个人习惯可能感受不同,希望能给朋友们一些参考。


You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图