帝国、PHPCMS及织梦对比(五):标签解析方式分析
帝国CMS万能标签说明
网页制作流程:1、制作显示效果页面;2、修改效果页面加上万能标签ecmsinfo;3、将已加上万能标签的HTML效果页面代码复制到后台更新;4、查看生成后的页面效果。
1、制作显示效果页面先用Dreamweaver做出网页效果,如下为我们预先做的普通HTML页面效果(图1):效果页面HTML代码如下(HTML代码1):<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>ecmsinfo万能标签使用教程</title><style>td {font-size: 10pt;}.line{line-height: 14pt;font-size: 10pt;}A:link {text-decoration: none; color:#000000}A:visited {text-decoration: none; color: #000000}A:active {text-decoration: underline; color:#000000 }A:hover {text-decoration: underline; color:#FF0000;}</style></head><body topmargin="0"><table width="700" border="0"align="center" cellpadding="3" cellspacing="1" bgcolor="#CEEEFB"><tr><tdheight="60"><div align="center"><font size="6"><strong>ecmsinfo万能标签使用教程</strong></font></div></td></tr><tr><td height="25" bgcolor="#FFFFFF"></td></tr></table><table width="700" border="0" align="center" cellpadding="0" cellspacing="0"><tr><td width="50%" valign="top"><table width="98%" border="0" cellpadding="3" cellspacing="1" bgcolor="#CEEEFB"><tr><td height="23"><strong>国内新闻</strong></td></tr><tr><td bgcolor="#FFFFFF"><table width="100%"▲top2、修改效果页面加上万能标签ecmsinfo:我们来分析下上面做好的HTML网页调用样式,如下图(图2):上图我们分析了该网页共有两种调用显示样式:文字调用样式、图片调用样式:文字调用样式:一行一列,显示内容包括"标题"(标题长度截取36个字符),"标题链接","发布时间"格式;应用于国内、国际、娱乐、体育新闻4个栏目,每个栏目显示最新3条信息。
phpcmspc标签详解
phpcms pc 标签详解PHPCMS V9内容模块PC标签调用说明模块名:content 模块提供的可用操作操作名说明lists 内容数据列表relation 内容相关文章hits 内容数据点击排行榜category 内容栏目列表position 内容推荐位列表position操作说明如下:--------------------------------------------------------------------------------内容推荐位列表(position):可用参数:参数名是否必须默认值说明posid 是null 推荐位IDcatid 否null 调用栏目IDthumb 否0 是否仅必须缩略图order 否null 排序类型num 是null 数据调用数量代码例子:{pc:contentaction="position" posid="2" order="listorder DESC"num="4"}<ul>{loop $data $key $val}<li> <a href="{$val['url']}">{$val['title']}</a></li>{/loop }</ul>{/pc}返回参数如下表:字段类型空默认注释title char(80) 否NULL 推荐位标题url char 否NULL 推荐位链接地址inputtime int(10) 否NULL 推荐位发布时间thumb char 是NULL 推荐位缩略图其他不定是根据模型所设置的加入到推荐位中字段名称--------------------------------------------------------------------------------内容列表(lists):可用参数:参数名是否必须默认值说明catid 否null 调用栏目IDthumb 否0 是否仅必须缩略图order 否null 排序类型num 是null 数据调用数量代码例子:{pc:contentaction="lists" catid="2" order="id DESC"num="4"}<ul>{loop $data $key $val}<li> <a href="{$val['url']}">{$val['title']}</a></li>{/loop }</ul>{/pc}返回参数如下表:字段类型空默认注释title char(80) 否NULL 推荐位标题url char 否NULL 推荐位链接地址inputtime int(10) 否NULL 推荐位发布时间thumb char 是NULL 推荐位缩略图其他不定是其他模型字段--------------------------------------------------------------------------------点击排行榜(hits):可用参数:参数名是否必须默认值说明catid 否null 调用栏目IDday 否0 调用多少天内的排行order 否null 排序类型(本月排行- monthviews DESC 、本周排行- weekviews DESC、今日排行- dayviews DESC)num 是null 数据调用数量代码例子:{pc:contentaction="hits" catid="2" order="weekviews DESC"num="10"}<ul>{loop $data $key $val}<li> <a href="{$val['url']}">{$val['title']}</a></li>{/loop }</ul>{/pc}返回参数如下表:字段类型空默认注释title char(80) 否NULL 推荐位标题url char 否NULL 推荐位链接地址inputtime int(10) 否NULL 推荐位发布时间thumb char 是NULL 推荐位缩略图其他不定是其他模型字段-------------------------------------------------------------------------------相关文章(relation):可用参数:参数名是否必须默认值说明catid 否null 调用栏目IDrelation 否$relation 无需更改keywords 否null 内容页面取值:$rs[keywords]num 是null 数据调用数量代码例子:{pc:contentaction="relation" relation="$relation" catid="$catid" num="5" keywords="$rs[keywords]"}{loop $data $r}<li>·<a href="{$r[url]}"target="_blank">{$r[title]}</a><span>({date('Y-m-d',$r[inputtime])})</span></li>{/loop}{/pc}返回参数如下表:字段类型空默认注释title char(80) 否NULL 推荐位标题url char 否NULL 推荐位链接地址inputtime int(10) 否NULL 推荐位发布时间thumb char 是NULL 推荐位缩略图其他不定是其他模型字段--------------------------------------------------------------------------------栏目列表(category):可用参数:参数名是否必须默认值说明catid 否0 调用该栏目下的所有栏目,默认0,调用一级栏目$siteid 否1 默认调用系统站点order 否null 排序方式、一般按照listorder ASC排序,即栏目的添加顺序num 是null 数据调用数量代码例子:{pc:contentaction="category" catid="0" num="25" siteid="$siteid"order="listorder ASC"} {loop $data $r}<li><ahref="{$r[url]}"><span>{$r[catname]}</span>& lt;/a></li> {/loop} {/pc}返回参数如下表:字段类型默认值说明catid smallint 无栏目IDsiteid tinyint(3) 0 站点IDmodule varchar(15) 无模块IDtype tinyint(1) 1 栏目类型IDmodelid tinyint(5) 5 模型IDparentid smallint(5) 5 上级父栏目arrparentid varchar(255) 无所有父栏目child tinyint(1) 0 子栏目arrchildid mediumtext 无所有子栏目catname varchar(30) 无栏目名称image varchar(100) 无栏目图片description mediumtext 无栏目描述parentdir varchar(100) 无父栏目目录catdir varchar(30) 无栏目目录url varchar(100) 无栏目链接items mediumint(8) 0 栏目内容数hits int(10) 0 点击数setting mediumtext 无栏目设置listorder smallint(5) 0 排序ismenu tinyint(1) 0 是否显示sethtml tinyint(1) 0 是否生成到根目录letter varchar(30) 无栏目拼音。
DEDECMS,ECMS(帝国CMS),PHPCMS,PHP168这四款CMS比较之我见
现如今网络已经进入平常家庭,很多网民已经不满足于QQ以及一些blog的个性展现而走向了网站建设的站长之路,一些个人网站的崛起也让他们看到了成功的曙光,与此同时,各类网站管理系统(以下简称cms)也犹如雨后春笋般地出现在了大家的眼前,给很多有站长梦的朋友建设网站带来了曙光。
但问题也随之而来,那就是:站长们应该如何选择cms,选择的cms系统是否能够完全满足自己的需要,cms是否能够稳定而持久的方便站长的工作?是否能够满足网站在将来发展的需要?以及选择的cms操作性如何等等,通过这些问题我对国内PHP 类的主流CMS进行了一些个人的摸索和总结,从“适用人群”,“负载性能”,“可操作性”,“功能方面”,“文档及服务”这五个方面来总结一些自己小小的心得希望对广大的站长和希望成为站长的朋友们选择适合自己的一款CMS带来些许的帮助。
参与比较的CMS为目前国内比较热门的几个包括了:DEDECMS,ECMS(帝国CMS),PHPCMS,PHP168 这四款也是目前用的最多的CMS。
适用人群首先解释一下这里的适用人群指的是网络水平或者说对网站技术了解的多少,因为广大的站长的水平不可能是一样的,有的站长是由于兴趣才走上了站长的道路,可能对网络的一般常识是了解的但涉及到专业一点的网站方面的技术时可能就会有些欠缺,对于这样的站长来说选择一款简单实用适合自己的CMS就显得有比较重要了。
接下来就国内比较热门的几个PHP类的CMS来归归类以方便给正在选择的站长们一个参考!DEDECMS:这款CMS就个人使用的情况来看还是比较简单的,对新手来说唯一需要了解和知道的就是它的系统标签,好在DEDE给出了比较详细的标签使用说明,这样就给新手的站长提供了进一步掌握和熟悉DEDE的途径。
最后推荐那些不需要有太多功能和站点属于个人站且对它的标签不觉得很烦的人可以选择DEDE来架构你的站点。
ECMS(帝国CMS):如果是第一次接触听说这款CMS会觉得它的名字很有霸气,也会想像它的功能和实力是不是也会和它的名字一样呢。
织梦、帝国及PHPCMS对比(12):PHPCMS低级BUG问题分析-电脑资料
织梦、帝国及PHPCMS对比(12):PHPCMS低级BUG问题分析-电脑资料落叶之前发布了一系列关于PHPCMS、织梦及帝国这三款CMS 对比分析文章,在对比分析中出现过对PHPCMS部分功能和架构设计方式明显的偏好,一些站长朋友们在评论中多提到落叶在为PHPCMS 捉刀的质疑,。
本文中落叶详细分析下PHPCMS2008中一直存在的并且在sp4最终版中仍然存在的严重甚至低级的问题及一些使用中遇见的“见鬼”的问题。
A、低级问题/BUG:1.删除栏目时所有子栏目和子栏目下所有文章不作任何提示,直接删除。
一般的思路时,如果栏目下有子栏目,或者栏目下已经有多篇文章,删除时应该提示该栏目不允许删除,或者至少应该给出危险警告,结果PHPCMS中是一不小心,点删除栏目,然后弹出的JS中“是否要删除栏目”点了确定后,就一下子所有子栏目全部干掉了,这也意味着这些所有栏目下的文章也没办法显示了。
虽然可以根据PHPCMS 中DATA目录下的栏目缓存中手动在数据库中找回这些栏目,但这个引起的麻烦自不待言了。
很多新技术员进来时,使用PHPCMS套站时,我都很明确的说明,PHPCMS后台不允许做任何删除操作,然而还是常有因为误点击而导致几十个子栏目及栏目因为这样的误点击全部消失的情况。
不过,落叶在新站规划时,一般都会修改PHPCMS栏目删除对应方法,删除前先查询栏目是否有子栏目,然后子栏目是否有文章,如果有需先删除文章,再删除子栏目,才能删除父栏目。
2.移动栏目后栏目关系字段没能正确更新,删除原栏目的父栏目,已经移走的子栏目会跟着被全部干掉落叶不止一次发生过这样的杯具,原来B栏目是A栏目的子栏目,后来想到B栏目独立出来做一级栏目更好,于是把B栏目修改为一级栏目,然后更新栏目缓存,修复栏目数据,心想这下应该没问题了,然后删掉A栏目,结果大杯具发生了,整个A栏目及B栏目以及B栏目以下的所有栏目跟着被删除了。
问题出现的原因:PHPCMS无限级分类每个分类中以arrchildid 字段记录了所有子栏目的ID,当把B栏目称出后,PHPCMS程序中没能对B栏目的原父栏目的相关字段正常更新,结果删除A栏目时,遍历arrchildid中的所有子栏目,括B栏目,一起全部干掉了。
dede织梦cms模板标签说明
dede织梦cms模板标签说明,模版制作解析引擎概述模板设计规范代码参考标记参考:arclist(artlist,likeart,hotart,imglist,imginfolist,coolart,specart ) field channel mytag vote friendlink mynews loop channelartlist page list pagelist pagebreak fieldlist一、织梦模板解析引擎概述在了解DedeCms的模板代码之前,了解一下织梦模板引擎的知识是非常有意义的。
织梦模板引擎是一种使用XML名字空间形式的模板解析器,使用织梦解析器解析模板的最大好处是可以轻松的制定标记的属性,感觉上就像在用HTML一样,使模板代码十分直观灵活,新版的织梦模板引擎不单能实现模板的解析还能分析模板里错误的标记。
1、织梦模板引擎的代码样式有如下几种形式:{dede:标记名称属性='值'/}{dede:标记名称属性='值'}{/dede:标记名称}{dede:标记名称属性='值'}自定义样式模板(InnerText){/dede:标记名称}提示:对于{dede:标记名称属性='值'}{/dede:标记名称}这种形式的标记,在2.1版中,表示结束只需要用“{/dede}”,但V3中需要严格用“{/dede:标记名称}”,否则会报错。
2、织梦模板引擎内置有多个系统标记,这些系统标记在任何场合都是能直接使用的。
(1) global 标记,表示获取一个外部变量,除了数据库密码之外,能调用系统的任何配置参数,形式为:{dede:global name='变量名称'}{/dede:global}或{dede:global name='变量名称' /}其中变量名称不能加$ 符号,如变量$cfg_cmspath ,应该写成{dede:global name='cfg_cmspath' /} 。
介绍几种常见的开源CMS
介绍几种常见的开源CMS1、dedecms(织梦)织梦是我们见到或是听到的最多的开源解决方案,适合于中小企业的网站系统解决方案,包括小型的门户系统,dedecms采用php+mysql的架构。
代表作seowhy、php1002、phpcmsPHPCMS 是国内领先的网站管理系统,同时也是一个开源的PHP开发框架。
3、动易cms这款是我最先接触的开源cms,比较简单,asp+access架构,现在已经发展到有.net平台的开源程序。
非常好用,强大。
4、帝国cms也是一款非常优秀的B/S架构的开源PHP内容管理系统,这款我没用过,也没测试过,据说很强大,大家有兴趣的童鞋可以尝试下。
5、kesioncms(科汛网站管理系统)采用ASP+ACCESS/MSSQL架构,系统具有极强的可扩展性。
6、sdcms时代内容管理系统。
也是一套asp+access的架构开源程序。
很不错。
试用过。
7、ecshop出自shopex公司的开源电子商务平台解决方案。
是一款非常好用的B2C程序,笔者曾经用过,非常优秀,PHP+MYSQL架构。
8、destoon强大的B2B(电子商务)行业门户解决方案,基于PHP+MYSQL的架构。
有很多大型的B2B 门户站都采用该套程序。
9、wordpress这个应该国内采用最多的个人博客开源系统了。
适合于个人博客、小型的企业站、CMS 10、z-blog国内优秀开源的ASP个人博客系统11、discuz康盛公司出品的最初只是为解决BBS而服务的社区型论坛系统,现在已经发展为一个综合性的开源程序服务提供商,DZ也是们国内论坛用得最多的开源cms,现在康盛公司并入腾讯更是展现出强大的后劲力量。
12、phpwind这也是一家强大的开源社区论坛系统,现在已经嫁入阿里巴巴,相信未来前景广阔。
这些都是我平时用过的,或是自己建站用过,或是本地测试过,上面介绍的除了帝国CMS我没有测试过,其余的我都测试过。
开源CMS赏析
开源CMS赏析国内CMS产品有很多,开源的产品也不少,大概的可分为以下几类:.NET开源产品:We7CMS;PHP开源产品:Dede CMS、PHP CMS和帝国CMS;ASP开源产品:动易SiteFactory和KesionCMS;Java开源的产品目前还没见到,以上产品是个人所了解过的,并且也试用过一段时间的,以上这些CMS产品都是经过多年的风雨洗礼后,依然屹立于市场上的产品。
在国内,如果你遇到了开源的好产品,千万不要放过,国内的市场飘摇不定,能一直坚持下来并持续更新的产品是值得我们学习和尊敬的。
本身笔者也是从事这个行业的人,之前也一直在用上述的产品,中间由于某些原因有一段时间不是很关注他们的消息,最近朋友说起来让推荐个好用的内容管理系统,笔者在推荐的同时又把以上的CMS重新的看了一下,最终推荐了一个比较适合朋友情况的产品。
因为本身就在这个行业内,不时的也会有朋友QQ上问,所以笔者决定做一个简单的分析记录下来,分享出去可以供更多的人参考。
基本的功能这儿就不在提了,相信真正了解过CMS的人也很清楚,基础功能大家都差不多,关键就是看谁的更好用。
当作为用户的时候,使用CMS的目的就是为了建站,建站无非就是栏目、模板和信息发布,剩下的就是一些扩展性的功能和细节的处理。
栏目和信息发布没啥可说的,每家的产品都差不多,笔者就从模板、扩展性和细节上来阐述一下。
1、模板模板这块做的比较好的是We7CMS,用全拖拽的方式来实现模板的建设,包括模板的布局,样式的展示,都是通过拖拽的方式,就像现在的博客一样,当然We7CMS的模板建设比博客拖拽的功能要强大很多,We7模板中的布局和样式是可以任意修改的,基于DIV和CSS,很少会用到切图这个环节了;但是We7系统内部提供的部件并不是很多,仅够做出一个简单的小门户站,大部分的部件还需要到他们的插件商店去下载。
刚开始的时候笔者其实并不理解,但是看到使用过的CMS后,发现就We7的产品安装包最大,差不多有20M左右,再加上.NET本身第一次打开网页的速度就不快,也可以理解人家为啥要提供小部分的部件,大部分的需要下载,减少系统冗余啊。
织梦标签常用模板及解释(新手必看)
织梦标签常用模板及解释{dede:type} 这个是指定栏目的调用,typeid='10' 是栏目ID [field:typelink/]栏目链接,eg:list_article {dede:type typeid='0'} [field:typename /] {/dede:type}完整list_articledede:include filename="head.htm"/}{dede:include filename="right.htm"/}{dede:field name='position'/}{dede:type typeid='0'} [field:typename /] {/dede:type}{dede:list pagesize='10'}[field:title /][field:description/]{/dede:list}{dede:pagelist listitem="info,index,end,pre,next,pageno,option" listsize="5"/}{dede:include filename="footer.htm"/}完整article_imagedede:include filename="head.htm"/}{dede:include filename="right.htm"/}{dede:field name='position'/}{dede:field.title/}{dede:field name='imgurls' row='1'} <img src=[field:imgsrc/] alt="[field:alttext /]" /> {/dede:field} {dede:productimagelist} <img src=[field:imgsrc/] alt="[field:alttext /]" /> {/dede:productimagelist}dede: 图集内容页从dede:field name='imgurls' 获得图片列表{dede:field name='imgurls' alt='图片输出区'}<img src=[field:imgsrc/] alt="[field:alttext /]" />{/dede:field}上面的调用代码默认情况下只能调用一张大图,下面教大家怎样获得所有大图列表首先发布图片集的时候“表现方式”选择第三种,即多缩略图样式然后我们把缩略图改成大图的方法:打开文件:include\taglib\channel\img.lib.php查找$fields['imgsrc'] = $fields['ddimg'];改成$fields['imgsrc'] = $fields['imgsrc'];完成article_article.htmdede:include filename="head2.htm"/}当前位置: {dede:field name='position'/}{dede:field.title/}织梦一些核心调用代码// 列出所有分类<ul>{dede:channel type='top' row='10' currentstyle="<li class='hover'><a href='~typelink~' ~rel~><span>~typename~</span></a></li>"} <li><a href='[field:typeurl/]' [field:rel/]><span>[field:typename/]</span></a></li>{/dede:channel}</ul>// 分类的文章列表<div class="place"><strong>当前位置:</strong> {dede:field name='position'/}</div><!-- /place --><div class="listbox"><ul class="e2">{dede:list pagesize='10'}<li> [field:array runphp='yes']@me = (empty(@me['litpic']) ? "" : "<a href='{@me['arcurl']}' class='preview'><img src='{@me['litpic']}'/></a>"); [/field:array] [<b>[field:typelink/]</b>] <a href="[field:arcurl/]" class="title">[field:title/]</a> <span class="info"> <small>日期:</small>[field:pubdate function="GetDateTimeMK(@me)"/] <small>点击:</small>[field:click/] <small>好评:</small>[field:scores/] </span><p class="intro"> [field:description/]... </p></li>{/dede:list}</ul></div>//内容页的核心代码<div class="place"> <strong>当前位置:</strong> {dede:field name='position'/}</div><!-- /place --><div class="viewbox"><div class="title"><h2>{dede:field.title/}</h2></div><!-- /title --><div class="info"><small>时间:</small>{dede:field.pubdate function="MyDate('Y-m-d H:i',@me)"/}<small>来源:</small> {dede:field.source/}<small>作者:</small>{dede:field.writer/} <small>点击:</small><script src="{dede:field name='phpurl'/}/count.php?view=yes&aid={dede:field name='id'/}&mid={dede:field name='mid'/}" type='text/javascript' language="javascript"></script></div><!-- /info -->{dede:field.description runphp='yes'}if(@me<>'' )@me = '<div class="intro">'.@me.'</div';{/dede:field.description}<div class="content"><table width='100%'><tr><td><div id="contentMidPicAD" style="float:right; clear:both; top:0; vertical-align:top;">{dede:myad name='contentMidPicAD'/}</div>{dede:field.body/}{dede:field.vote/}(责任编辑:{dede:adminname/})</td></tr></table></div>注:{dede:field.title/}文章标题{dede:field.body/} 文章内容。
帝国、phpcms及织梦对比:专题功能对比分析
这几天在忙着招聘一些网站编辑,有意在招聘信息中强调了编辑的专题策划能力。
作为内容整合的专题,由于关键词集中,能起到很好的SEO效果;而作为营销策划的创意专题,亦可以达到很好的营销效果。
按照落叶的经验,作为知识性网站,专题整理某技术关键词的所有相关技术文章及技术资料,永久存档,用户非常愿意主动去收藏和分享这样的知识性专题页面,获得的外链也自然会很多,再加上专题本身是因某关键词页制作,关键词非常集中并且灵活分期,SEO效果明显,一般能获得很好的排名,来IP也多。
用户访问专题页面时,同时查仔细查看专题汇总的相关文章,能够很明显的增加网站PV。
并且知识性专题是永不会过时的(除非技术被淘汰),专题也会随着相关文章的增加而更新,永久有效。
同样,作为娱乐或新闻热点类专题,由于专题中很清晰的呈现了热点事件的来龙去脉及目前进展,能够帮助网友很好很全面的了解新闻热点动态,所以往往也很受网友的欢迎,也容易在QQ群内自动传播。
同样的结果是大大增加PV量。
在3Q大战之时,各门户都带有明显的侵向性,在铺天盖地的新闻之下,专题成了抢占舆论至高点的有力武器,各个门户都制作了观点鲜明的专题,落叶也很清楚的记得,当时那段时间,大家天天在讨论各个门户对3Q事件的立场,基本都是通过各种网站的专题来详细了解。
既然用好专题这个功能,对网站IP及PV的提升非常有帮助,那么如果是用CMS做专题,需要CMS提供哪些功能呢?1. 发布文章时可以自动选择添加到某个专题或者多个已存在的专题;2. 建立专题后,可以通过特定关键词搜索已有文章信息,直接勾选后批量添加到专题;3. 专题支持自定义LOGO及BANNER;4. 专题需要能随着相关文章的增加自动更新或者有触发更新的机制;5. 专题可自行选择独立的模板;6. 专题能生成静态,并自定义生成的路径及文件名(自定义URL规则);7. 文章内容页下方能够显示该文章已加入的专题名称及链接;8. 专题有评论功能;9. 专题中能自由增加投票、问卷调查等10. …那么帝国CMS、PHPCMS、DEDECMS这三款用得比较多的PHP开源CMS的专题功能又是怎样的呢?各有什么样的优缺点呢?1. 专题的创建流程对比一般简洁的专题添加流程应该是添加专题分类、添加专题、设置专题的名称、LOGO、BANNER、简介及一些个性化选项、添加专题信息、修改专题模板、生成专题页面。
关于wordpress与织梦帝国以及phpcms的一些认识
关于wordpress与织梦帝国以及phpcms的一些认识本人菜鸟,博客用wordpress建站已经有一个多月了,谈谈对wordpress的使用感悟,纯菜鸟探讨,抛砖引玉。
感觉这款软件比较适合做个人博客,虽然生成的是伪静态页面,但是可以静态通过使用插件来实现。
不过网上一些说法是网站一旦pv达到十万级,服务器压力会剧增,推荐使用国内的织梦,帝国或者phpcms这些可以生成真正静态页面的国产程序。
本人没有条件实验,无发言权。
但是wordpress作为国际知名、专业的博客软件,相信应付普通博客绰绰有余。
(最近使用seo插件“All In One SEO Pack”时注意到无法在后台修改博客主题,需要将这个插件里的标题一起修改才能被搜索引擎认可,大家可以注意一下,修改网站描述和关键词同理。
)因为本人之前注册了一个爱潮流网站,wordpress的主题没有合适的,而且一不留心神做大后服务器会受不了,所以转战织梦帝国以及phpcms这三个国内软件。
从网上的评价来看:织梦使用者众多,相关教程详细,模板多,缺点是后台及主页速度最慢;帝国稳定,后台及主页速度最快,漏洞最少(更新漏洞时间按年算)即最安全,缺点模板相对较少,后台操作最复杂;phpcms中庸,但最新版本phpcms v9 界面及默认主题较华丽。
于是我现实选择了帝国,对于新手的我操作起来比较痛苦,主要表现在:模板不多(付费也没其他两个多,找人仿站又太贵),模板安装比较复杂(好像后台不支持一键更新),原始模板又不好看。
于是又选择织梦,中间遇到些问题,但身为菜鸟的我刚刚能解决(百度老师),去淘宝买了个模板花了一块钱,更新全站后模板即可用。
PS:我期间用过phpcms,但是安装遇到问题,应该是我本身服务器的事吧,反正网上没有像我这种问题的,所以不赘述了。
总结,新手建博客或淘宝客十分推荐用wordpress,非常简单,操作简单易懂,特别是更换模板,非常简单。
其他三个程序支持生成静态页面,功能也比wordpress强大,但是需要钻研,看你有没有时间了。
哪个cms系统好用
哪个cms系统好用如今想到做网站,就会想到去下载一个cms 系统来用,但是cms很多,到底哪个cms好呢?对于新手来说,选择一个适合自己的cms很重要,但是不可能每个cms都去试,这个需要很多精力和时间,下面来教大家如何选择最适合的CMS系统,常见的CMS有PageAdmin,dedecms,帝国cms和phpcms、discuz等,不同的CMS的侧重点也不同,是不是易上手,模板多不多,设置复杂不复杂,SEO效果怎么样,这些都是必须要搞清楚的问题,俗话讲“知己知彼方能百战百胜”,CMS选的好,对SEO简直是有如神助,更让以后网站管理和维护事半功倍,下面讲解一下最常见的三款CMS的比较。
PageAdmin很灵活易用的CMS,想到就能做到。
安全性:高,PageAdmin采用开发,安全性不错。
模板丰富度:PageAdmin官方提供的模板很多,也很丰富,是所有cms中模板最多的。
上手简易度:很适合没有任何基础用户,所有结构都可以通过后台调整,不需要去捣鼓html。
扩展性:PageAdmin的自定义表单、自定义模型是很经典的设计,如果有基础,几乎可以做成常用的网站功能。
SEO:常用的seo功能都有。
总体评价:★★★★☆推荐使用该系统,PageaAdmin看似简单,实际很强大,花1周左右学习后你会非常受用,由于PageAmin的便利性,现在很多网络公司都采用pageadmin建站,效率高,不需要专业技术人员就可以开展建站业务。
帝国CMS非常老牌的CMS,就如同该CMS官网介绍的安全、强大、稳定、灵活。
安全性:高,帝国cms还是比较安全的;模板丰富度:帝国CMS的模板与程序分离,再二次开发与模板设计上非常灵活,这样就决定着对要对PHP有一点了解,标签的参数较为复杂,但是模板的导入导出功能对新手不太友好,同时扩展库也较为丰富上手简易度:帝国CMS后台设置参数较多,所有信息皆存储在数据库中,功能搭配上较为严谨,对新手来说需要一定的学习成本。
主流CMS比较
国内三大CMS评测1.Dedecms框架:采用XML名字空间风格核心模板:模板全部使用文件形式保存,对用户设计模板、网站升级转移均提供很大的便利,健壮的模板标签为站长DIY 自己的网站提供了强有力的支持。
高效率标签缓存机制:允许对类同的标签进行缓存,在生成HTML的时候,有利于提高系统反应速度,降低系统消耗的资源。
模型与模块概念并存:在模型不能满足用户所有需求的情况下,DedeCMS推出一些互动的模块对系统进行补充,尽量满足用户的需求。
结构比较容易扩展。
也比较容易可以二次开发模板:模板制作还算简单,至少不用特别需要编程语言,配合dw插件理论上能够做出全部你想要的样式,不过个人感觉dede的文档太不详细,尤其是底层模板字段每个字段的意义没有指明,一上来很难悟出每个字段的意义数据承载能力:dede的数据承载能力并不好,最新版本对这几个问题进行了解决但还是相对较弱。
SEO能力:感觉是所有cms里seo做的最好的,自由列表模板,每个页面可自由定制,目录自定义,二级域名无限绑定子目录,dede批量文章管理我觉得是做的最好的,关键词自动生成(虽然容易被k),很多地方都体现出seo的好处。
采集能力:dede自带的采集能力不太行,很多东西都采不到,列表缩略图这些最新的功能都没有,但第三方的采集对他支持的都比较好,火车et都是很不错的。
服务支持:dede服务有待提高,论坛人气很旺,但是都是问问题的,没什么解决问题的实质内容,满坛子都是新手,很少看blt上论坛,毕竟blt兄是利用业余时间维护dede。
2.ECMS(Empire cms)框架:提供了系统扩展框架,可以直接在后台通过新建表、自定义字段,然后组成新的系统模型,以实现各种适合用户自己的系统。
如下载系统、音乐系统、商城系统、产品库、分类信息等等......同时,此功能可将信息量分配于不同的信息表,为数据量较大的网站进行数据部署。
这中功能可以深入研究一下,这对于网站的维护时很好用的。
十大CMS系统
十大CMS系统介绍1、DEDECMS(织梦内容管理系统)特点:是国内完全开源基于php的一款CMS系统,,可以自主进行二次开发,最新的V5版本又有了一些新的改进和功能的添加.最新的版本的模板已经应用了DIV+CSS的模式使的网页更符合标准.评价:这是一套令人爱憎分明的系统,首先它是国内一款开源的系统,2.x的时候功能都已经另它的fans为之疯狂,非常灵活的定制,强大的功能,简洁的操作,但2.x的瓶颈问题:大数据处理,到3.0的时候可能会解决,但3.0的一直跳票,迟迟不见发布,另很多人都非常失望,3.0的时候原来的问题好像也没有什么改进,现在已经出了4.0,最新的版本是DEDE2007 V5,原来的大数据处理问题已经得到了相应的解决,因为开源,所以研究人很多经常爆出漏洞,所以用dede系统的网站最好服务器安全措施要做足。
2、PageAdmin CMS(PageAdmin网站管理系统)特点:基于开发,灵活易用,扩展性强,pageadmin是一个很独特个性的系统,没有采用主流的html模板的方式来设计,而是采用后台布局和框架组合式的设计,很容易上手,作为一个后起之秀,我认为易用性是pageadmin这几年跻身cms第一阵营的原因,很多像我一样懒惰不愿意写或不会写html界面的用户会非常喜欢。
评价:我个人是很喜欢这系统,从2.1到3.0我基本都用过,一路发展下来,功能不断给用户惊喜,自定义表单和自定义模型这块设计得很好,如果对熟悉,你可以用这个系统扩展出很多功能,我曾用这个系统给一个客户做了一个专业的物流管理系统,总之,这是一个基因不错的系统,有兴趣的去下载来试试自己慢慢体会。
3.ECMS(帝国内容管理系统)特点:采用了系统模型功能:用户通过此功能可直接在后台扩展与实现各种系统,如产品、房产、供求、等等系统,因此特性,帝国CMS又被誉为“万能建站工具”;采用了模板分离功能:把内容与界面完全分离,灵活的标签+用户自定义标签,使之能实现各式各样的网站页面与风格;栏目无限级分类;前台全部静态:可随受强大的访问量;强大的信息采集功能;超强广告管理功能等评价:作者wm_chief是个狂人;一个人搞定数据库管理,论坛,新闻,下载,flash,域名交易系统等,还包括JSP的版本,都是自己一个人写,还有一个人搞定后期服务,客户支持,产品宣传。
PHPCMS代码详细讲解
PHPCMS 整站代码分析讲解(一)首先我对PHPCMS 的头程序文件开始讲解: include/common.inc.php 这个文件是程序启动的核心文件.[Copy to clipboard][ - ] CODE:<?php/**代码讲解分析:逆雪寒. 2007 - 12 - 20*/$mtime = explode(' ', microtime());$phpcms_starttime = $mtime[1] + $mtime[0];/**计算脚本开始运行的时间。
很常见的写法。
最后结算还在程序运行的终点位置。
讲到了在给各位说。
*/unset($LANG, $_REQUEST, $HTTP_ENV_VARS, $HTTP_POST_VARS, $HTTP_GET_VARS,$HTTP_POST_FILES, $HTTP_COOKIE_VARS);/**把 $HTTP_ENV_VARS $HTTP_POST_VARS 全局变量设置为NULL 因为php4.1.0以上默认以$_POST 来替代。
unset后防止程序运行在低版本会出现安全等问题。
比如变量注入*/set_magic_quotes_runtime(0);//地球人都知道。
关了字符窜入库自动转意比如 my name is on'x 转成 my name is on \'x 为了最大的程序性能所以我们关掉吧~哈哈define('IN_PHPCMS', TRUE);/**程序入口标记。
为什么需要这个东西呢。
就好比你进一个小区,保安大哥哥肯定要你签字或是挂个鸟牌证明你是从正门进来的。
防止你翻墙进入去偷东西搞破坏。
这个入口标记也有这个功能。
在这里定义了一个常量IN_PHPCMS 为TRUE ,然后我在其他程序文件里面检查这个标记。
如果不存在或不为真,那么就基本可以肯定你这个家伙是个小偷来的。
PHPCMS 、织梦及帝国对比(八)之SEO辅助功能及个性化调用分析
此前落叶针对PHPCMS、织梦、帝国CMS从多个角度发过一系列文章作过一些功能和细节分析,这段时间常接触到推广部门SEO的各种细节需求较多,所以本文中针对一些SEO 站内优化中一些常见的基本需求对这三款CMS作些对比分析。
1. SEO元标签设置及调用PHPCMS:PHPCMS中同一个模块中的所有页面基本都使用的是同一个公共的头部,SEO元标签都是使用的统一的head数组中的值。
标题:$head[…title‟]关键词:$head[…keywords‟] 描述:$head[…description‟]那么首页、栏目页、列表页及内容页,不同性质的页面,这些Meta属性都使用的同一个标签,怎么实现不同页面的个性化属性的呢?实际虽然所有模板引用公共头部、共同的标签,但实际PHPCMS在PHP程序中或生成静态时,都作了判断处理,调用后台中不同的值来赋给$head数组。
调用方式:首页:网站标题:$PHPCMS['meta_title']网站关键词:$PHPCMS['meta_keywords']网站描述:$PHPCMS['meta_description']PHPCMS生成静态时实际默认的是以“网站名称–网站标题”($head[…title‟]=$PHPCMS[…sitename‟] - $PHPCMS[…meta_title‟])的方式来生成网站首页的标题,关键词和描述则是直接使用的系统设置中如上图所示关键词和描述设置项的值。
一些SEO人员有时候希望首页标题能够有更大的灵活度,或者不希望网站名称显示在前面,如果稍懂PHP,落叶通常推荐的处理方式是,直接修改PHPCMS根目录下的include 目录下的html.class.php文件中的生成首页部分的标题设置。
Html.class.php中的第22行:$head['title'] = $PHPCMS['sitename'].'-'.$PHPCMS['meta_title'];可修改为:$head['title']= $PHPCMS['meta_title'];这样首页标题就可以不显示网站名称,而只显示自己有meta_title中设置的内容了。
27个比较好的免费CMS系统
文章来源:芯晴网页特效:/html/sucai/zhanchangziyuan/1185.htm一、PHP类的CMS1.DEDECMS(织梦内容管理系统)官方网址:特点:是国内完全开源的一款CMS系统,可以自主进行二次开发,最新的V5版本又有了一些新的改进和功能的添加.最新的版本的模板已经应用了DIV+CSS的模式使的网页更符合标准.评价:这是一套令人爱憎分明的系统,首先它是国内一款开源的系统,2.x的时候功能都已经另它的fans为之疯狂,非常灵活的定制,强大的功能,简洁的操作,但2.x的瓶颈问题:大数据处理,到3.0的时候可能会解决,但3.0的一直跳票,迟迟不见发布,另很多人都非常失望,3.0的时候原来的问题好像也没有什么改进,现在已经出了4.0,最新的版本是DEDE2007 V5,原来的大数据处理问题已经得到了相应的解决.2.ECMS(帝国内容管理系统)官方网址:/特点:她采用了系统模型功能:用户通过此功能可直接在后台扩展与实现各种系统,如产品、房产、供求、等等系统,因此特性,帝国CMS又被誉为“万能建站工具”;采用了模板分离功能:把内容与界面完全分离,灵活的标签+用户自定义标签,使之能实现各式各样的网站页面与风格;栏目无限级分类;前台全部静态:可随受强大的访问量;强大的信息采集功能;超强广告管理功能等评价:可以说这个是最让我值得写的东西,作者wm_chief简直是个狂人;一个人搞定数据库管理,论坛,新闻,下载,flash,域名交易系统等,还包括JSP的版本,都是自己一个人写,还有一个人搞定后期服务,客户支持,产品宣传。
还要每天抽时间灌水AD等,现在应该已经不是他一个人了.ECMS的功能非常多,包括下载,flash,商城,图片,新闻,分类信息,电影系统,文章系统,友情链接,广告管理等,比如一些远程发布,刷新效率,类别管理,权限细分,万能的论坛接口,信息采集,附件管理等这些都是Ecms特别的亮点.以前大家对ECMS都是可望而不可及的,因为以前都是商业性质的,而现在它已经在网站上号称全部开源了,不管会不会持久但现在大家可以到它的官方网站上去下载最新的版本体验一下ECMS带来的方便吧.3.PHPCMS官方网址:特点:采用模块化开发,可自由安装和卸载,并提供程序源代码和模块开发文档,功能可扩展更方便,PHPCMS 2007 由文章、下载、图片、分类信息、影视、商城、采集、会员、财务、推广联盟、广告管理、企业黄页、房产、问吧、Digg 等20多个功能模块组成。
PHPCMS、帝国及织梦对比分析:关联类别属性
PHPCMS、帝国及织梦对比分析:关联类别属性
这是一篇PHPCMS、帝国及织梦对比分析,它主要讲述了PHPCMS、帝国及织梦在关联类别属性的区别,下面就让我们一起来了解一下吧。
在使用CMS套站时进行栏目结构规划时常遇到这样一种情况:每个栏目下想再细分一些类别,如果以栏目的形式添加,很多栏目下都会有这些重复的类别,这样一来就导致很多重复和栏目。
所以需要考虑直接在字段属性类别的方式来添加,发文章时直接选择类别来给文章归类。
不知道站长朋友们实际处理过程中有没有遇到这样的问题,但落叶确实感受挺深了,在涉及医疗性质的站点时,每个疾病病种下面有多个子病种,然后子病种的文章类型又分为病因、症状、诊断、治疗、预防、科普、建议等等,每个栏目的文章基本都需要分这些类别,如果以子栏目的形式添加,50个子病种就要多添加300多个子栏目,这样不管是对网站结构还是SEO来讲都是灾难,所以这个时候类别字段显得比较重要。
不同的CMS基本都有内置或者提供类别设置的功能,只是表现形式不同,设计细节不同,扩展灵活性也不同,本文中落叶拟对PHPCMS、帝国CMS及织梦CMS中的类别这点作一些细节性对比。
织梦CMS:
DEDE中没有很明确的类别功能,可以变相实现的体现方式是自定义属。
对帝国cms、dedecms、phpcms等负载测试总结分析
测试程序:CMS程序:帝国cms dedecms phpcms论坛程序:discuz phpwind xiuno负载测试结果:xiuno discuz phpwind phpcms ( 帝国cms ? dedecms)从数据库设计来看(个人观点):xiuno (discuz 、phpwind 、phpcms)(帝国cms 、dedecms)dedecms和帝国cms都是老牌的CMS了,从的数据库设计来看,不知是数据库设计者完全没有理解mysql索引的真谛,还是留一手以对高负载需求的用户收费改进?(希望不懂技术的朋友不要喷我,真正懂mysql索引的朋友可以自己看一下他们对索引的设计,虽然对于dedecms和帝国cms的作者来说,我只是一个晚辈,像您们这样有10多年开发经验的人,我比较尊敬,但我建议当前的dedecms和帝国cms数据库设计者还是再研究一下mysql索引吧,可以不相信我,但可以花点时间看看discuz 、phpwind的数据库设计吧,确实是比您们的好)。
如果有幸帝国cms作者能看到此文,希望您再重新设计帝国cms架构吧,毕竟这些年您一直在改进帝国cms的负载能力,光是通过分表技术提升,没有真正用到索引来优化,真的不行的,如果用对了索引,性能还会有更大的提升。
dedecms的创始人我算是和他认识,但现在dedecms却不是他的,比较遗憾,现在的dedecms这几年确实没多大变化,一直在打补丁,这样下去真是比较悲剧。
我的测试环境:i3CPU 4G内存1T硬盘win7系统apache 2.2 + mysql 5.0(普通环境没有优化过)测试方法:导入100万至1亿不等数据,进行简单的访问测试我的导入方法:根据各个程序的数据结构写出导入程序,1.先写一个PHP程序,将数据写入e:/insert1.sql 这个文件,2.然后再通过LOAD DA TA local INFILE 'e:/insert1.sql' INTO TABLE `数据表名` character set 编码; 这种方式导入的,导入千W数据也就几分钟。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作为CMS,最需要做到地是把程序和数据展示分离出来,让用户不需要了解太多程序的程序即可很方便的使用来搭建合种个性化站点,而标签的灵活性,很大程度上决定了CMS 的好用与不好用,而标签的好用不好用,除了处决于标签本身在细节上做的细致程度(如详细的帮助文档、简单的标签生成方式等)决定外,整个标签体系的设计思路更起到决定作用。
本文中落叶对PHPCMS、DEDECMS及帝国CMS的标签的设计思路与解析方式作一些简要的对比分析。
现在主流的PHP程序实现数据处理与数据展示的分离,都会使用第三方的或者自己开发的模板引擎,一般的模板引擎中除了支持特定格式的数据变量标签展示外,还支持数组循环、逻辑判断、函数处理、文件包含、PHP原生语法等。
一般的模板引擎的处理思路时各种以HTML文本的方式存储(有的是.html的扩展名,有的是.tpl的扩展名),然后模板引擎会对模板中的标签或代码进行编译预处理成PHP文件缓存到特定目录,处理成的PHP文件里面不再是标签格式,而是标签被处理后可直接执行的对应的PHP语句块。
然后在PHP控制文件中处理好数据后,使用模板调用函数调用编译好的PHP文件形式的缓存模板(当然,过程中会有判断,如果缓存不存在,则直接从原模板文件编译一次生成缓存后调用),直接整合到PHP控制文件中一起执行。
如果是生成静态,则是先处理好数据后,引用编译好的模板文件,执行,输入后缓存区,后面再写入生成HTML文件。
早期的ASP类风格的CMS设计没有系统化的模板引擎,而是采用单一替换的模式,即先读入模板文件,然后替换模板文件中标签,每一个标签都是单独处理替换。
PHPCMS和DEDECMS中模板的处理方式为通用的模板引擎处理方式,而帝国CMS的模板处理方式为早期的ASP类风格CMS的处理方式。
1. PHPCMS标签的解析方式:
PHPCMS标签形式主要有TAG标签和GET标签,静态HTML模板在编译过程中会经过模板引擎统一进行正则替换并转化为对应的PHP函数块。
如:{tag_标签内容列表},经模板引擎编译处理后:
在控制PHP文件中使用模板引用函数引用模板时,该标签即自动调用global.func.php 文件中的tag函数执行得到文章列表结果后输出。
又如GET标签:调用最新10条文章标题的GET标签
经PHPCMS模板引擎编译解析后的PHP代码块:
2. DEDECMS标签的解析方式:
DEDECMS标签的解析方式和PHPCMS类,经过DEDE模板引擎类的dedetag.class.php 的编译处理,标签被处理成PHP代码块后缓存到data目录的tplcache目录。
如:分页页码列表标签{dede:pagelistlistsize=‘5’ listitem=‘’/}经DEDE模板引擎编译解析后和模板HTML一起缓存到缓存目录的对应的PHP代码块为:
因为DEDE CMS模板引擎也是目前通用的模板引擎编译解析方式,所以整个流程和PHPCMS类似。
3. 帝国CMS标签处理方式:
据落叶的观察,帝国CMS是没有模板引擎这个概念的,每一个标签的处理都是单独用函数来替换。
前一段时间,一位朋友希望在内容页有多分页的文章前面加上分页小标题导航。
当时,为了实现这个小小的功能,落叶仔细研究了下落叶的模板标签解析功能,实际发现,帝国CMS在生成静态时,是先将需要展示的数据处理好,甚至整合HTML文件然后单个替换模板中的标签,每个标签都单独写一个或几个函数来处理,然后替换后生成静态。
基本上帝国CMS中的标签替换基本是白名单替换。
结果是,即使自己想在内容页增加一个简单的自定义标签,实现一些小的功能,都需要修改帝国的functions.php和t_functions.php中的核心函数文件。
举个帝国CMS处理标签的简单例子:
获取面包屑导航的标签的处理代码如下:
处理标题标签的代码如下:
一般如果按照模板引擎编译解析的方式,会选将所有变量性质的标签直接通过定界符判断出是标签,然后统一使用正则进行解析,而帝国的处理方式是一个个单独处理,所以就出现像上面的那样,$string为读取出来的模板内容,然后一步一步逐一替换处理,典型的早期的动易、新云等ASP类CMS的标签的处理方式。
不管帝国CMS这样处理的执行效率高不高,至少二次开发的效率是很低的,每个页面的标签或者变量都要单独去处理。
如果是想在模板中增加一个自定义变量类的标签,在PHPCMS中只需要在模板中{$自定义变量名}这样即可,而帝国CMS中除了在模板中添加[!—自定义变量名--](如[!--pagedes--])外,不得不在生成静态的处理函数中增加类似上面的标签替换步骤,如:$string=str_replace('[!--pagedes--]',$pagedes,$string);
也许对于普通用户而言,不论标签的解析方式如何,只要把标签做得细致,简单好用,灵活,就够了,所以帝国CMS还是有比较多的忠实用户的,很多人觉得很省心,不要考虑啥逻辑,按照说明,标签放上去,就基本没问题。
而对于深度用户,尤其是有编程基础的用户,喜欢DIY或者个性需求较多的,更习惯目前主流的模板引擎的编译解析方式,不太喜欢封装得很好的标签,希望得到干净的数据,可以直接在模板中进行逻辑处理,而标签除了一部分是变量外,调用数据类标签,实际是特定格式调用的系统函数。
至少落叶,偏向于喜欢PHPCMS和DEDECMS的标签解析方式,而对帝国CMS的标签处理方式比较纠结。