网站大量收购闲置独家精品文档,联系QQ:2885784924

dedecms代码研究.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
dedecms代码研究

dedecms代码研究(1)开篇 dedecms 相信大家一定都知道这个cms 系统,功能比较强大,有比较完善的内容发布,还有内容静态化系 统,还有就是它有自己独特的标签系统和模板系统。而模板系统也是其他cms系统比较难模仿的的东西,这个 东西还是需要一点开发功力和技巧的。 本系列文章就研究一下dedecms的这套系统,挖掘一下看看里面有什么好东西。 建议大家先了解一下dedecms的功能。自己先动手用一下,对系统功能有个大概了解。 本文先带领大家了解一下dedecms的代码和功能架构。 其实,dedecms在架构上没什么应用架构模式可言,就是最简单的PHP 应用而已。访问不同的PHP 文件, 管理不同的系统功能。看目录大家都能猜出来各个目录干什么用的。include目录放系统的一些公用函数和类, plus目录放插件,templates目录放模板,dede 目录是管理后台目录。 我们打开include 目录,看看里面都有什么好东西。 calendar 一个选时间的js captcha 一个验证码,还是开源组件 code 没啥意思,翻页的文字 data 里面是一些系统用到的资源,比如声音,分词库,字体,图片等 dialog 里面估计是一些AJAX弹出窗口的内容部分。以后碰到了再说 inc 里面一些单独的功能类函数,以后研究一下为什么要单独放 payment 支付接口 taglib 好东西,是dedecms的标签存放的地方,打开看看,里面一堆文件,貌似就是dedecms的模板标 签啦 tpllib 模板库?暂时搞不明白,希望随着研究深入,能弄明白 其他 include 目录下的文件估计都是一些最基本的功能文件啦,比如常用函数,模板系统之类的东西了。用 到再说吧 打开dede目录(就是dedecms的管理目录)看看,哟嗬,里面的东西还挺多,看名字就知道了,都是各种 功能管理文件,一个功能一个文件。最原始的网站开发模式做出来的。我们姑且称之为高效吧。毕竟PHPwind 和discuz之类也是用类似的方法开发的。 整个程序大体就这些东西啦。功能就不讲了,建议不熟悉dedecms的朋友自己看一下dedecms的后台管 理功能,这样能有助于我们更好理解和分析它。 另外提一点,我们的这次代码分析,主要分析的是其页面生成、显示、模板处理、标签处理部分,这套 系统也是dedecms比较引以为傲的东西,之后呢,还会分析一些笔者觉得比较酷的功能代码。 最后,希望这次代码分析旅程能让大家有所收获。 sourcejoy 之dedecms代码研究(2)从index开始 现在继续,今天讲的主要是dedecms的入口代码。 2 先打开index.php看看里面是什么吧。打开根目录下的index.php嗯,映入眼帘的是一个if语句。 检查/data/common.inc.php是否存在。如果不存在就跳转到安装界面。 我们来到/data/看看这个目录和common.inc.php。 打开/data/,里面很多目录和文件,有上传的临时目录,模板缓存,压缩的临时目录,各种数据库里保存 的系统配置信息的缓存文件以及其他的一些东西,就一个字乱~ 好吧,我们打开common.inc.php。哦,原来就是保存了数据库连接的相关变量而已。说白了,就是dedecms 的数据库连接配置文件,估计是安装完系统生成的。所以/index.php 会检查它是否存在。 我们回到/index.php中继续往下看,第二个if语句,判断GET请求“upcache”是否存在,存在就更新首 页缓存,不存在就直接301 跳转到index.html,也就是dedecms的静态首页(记住,dedecms的前台页面都是系 统生成的静态页面)。 想想接下来我们要研究什么?对,就是GET请求“upcache”存在的时候,更新首页缓存这小段代码啦。 代码如下: require_once (dirname(__FILE__) . /include/common.inc.php); require_once DEDEINC./arc.partview.class.php; $GLOBALS[_arclistEnv] = index; $row = $dsql-GetOne(Select * From? HYPERLINK mailto:%60 \l @__homepageset `#@__homepageset`); $row[templet] = MfTemplet($row[templet]); $pv = new PartView(); $pv-SetTemplet($cfg_basedir . $cfg_templets_dir . / . $row[templet]); $pv-SaveToHtml(

文档评论(0)

ktj823 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档