DedeCms文件加载顺序原理介绍

资源来源网络,如需授权,请更换源码,模块仅供学习,如需商用请购买正版授权,本栏目不提供技术服务!
如遇蓝奏网盘打不开lanzous替换成lanzoux尝试!

  DedeCms 织梦cms可以说是国内最出名的cms系统了,对于我们研究cms,二次开发cms都是一个很好地学习。

  下面分享下dedecms文件是如何加载模板是如何替换的。

  比如织梦,ecshop这类模板引擎系统,研究它们的原理,就是从安装根目录的index.php看起来,看看都引入了那些文件,这些文件又起到了什么作用。

  织梦的index首先判断了/data/common.inc.php这个文件存不存在,存在就是已经安装过了,否则就是没安装过,跳到install/index.php。

  接下来引入了全局加载的常用文件

  require_once (dirname(__FILE__) . “/include/common.inc.php”);

  进入这个文件我们会看到

  error_reporting(E_ALL || ~E_NOTICE);

  define(‘DEDEINC’, str_replace(“\\”, ‘/’, dirname(__FILE__) ) );

  define(‘DEDEROOT’, str_replace(“\\”, ‘/’, substr(DEDEINC,0,-8) ) );

  define(‘DEDEDATA’, DEDEROOT.’/data’);

  define(‘DEDEMEMBER’, DEDEROOT.’/member’);

  define(‘DEDETEMPLATE’, DEDEROOT.’/templets’);

  它定义了很多路径变量,这样在以后引入文件的时候,会变得非常方便和明了。

  接下来定义了一个function _RunMagicQuotes(&$svar)函数,这个函数对post,get,global等变量进行了过滤处理,这样使用更安全。

  接下来引入系统常用变量

  require_once(DEDEDATA.”/config.cache.inc.php”);

  上传变量

  require_once(DEDEINC.’/uploadsafe.inc.php’);

  数据库配置

  require_once(DEDEDATA.’/common.inc.php’);

  系统安全配置

  require_once(DEDEDATA.’/safe/inc_safe_config.php’);

  剩下的是一些常用目录的设置,比如:

  模板的存放目录,插件目录,会员目录,专题列表,附件目录等。

  接下来引入数据库的操作类:

  require_once(DEDEINC.’/dedesql.class.php’);

  剩下的是全局函数和模型控制的引入:

  require_once(DEDEINC.’/common.func.php’);

  // 模块MVC框架需要的控制器和模型基类

  require_once(DEDEINC.’/control.class.php’);

  require_once(DEDEINC.’/model.class.php’);

  这些就是include/common.inc.php包含的内容,接下来,index.php 引入了

  require_once DEDEINC.”/arc.partview.class.php”;

  这个是模板解析类,有了它,通过调用它的方法Display,就可以加载模板文件,并显示了。

©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!
织梦模板网 » DedeCms文件加载顺序原理介绍
☉免责声明:本站所有模板均来自用户分享和网络收集,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服,我们核实后会立即删除。
☉如果源码网盘地址失效!或有其他问题,请点我报错,谢谢合作!
☉人民币与积分汇率为1比10,即1元=10积分.有任何疑问请联系客服
☉如有其他问题,请加网站客服QQ(330921598)进行交流。
☉本站提供的源码、模板、软件工具等其他资源,都不包含技术服务,请大家谅解!
☉源码、模板等资源会随着技术、环境的升级而存在部分问题,还请慎重选择。

发表评论

加入织梦模板网永久VIP 海量资源免费下载

立即查看 了解详情