花魁直播高品质美女在线视频互动社区 - 花魁直播官方版

 歡迎來到素材無憂網(wǎng),按 + 收藏我們
登錄 注冊 退出 找回密碼

DedeCms文件加載順序原理介紹

時間: 2018-12-09 20:40 閱讀: 作者:素材無憂網(wǎng)

DedeCms 織夢cms可以說是國內(nèi)最出名的cms系統(tǒng)了,對于我們研究cms,二次開發(fā)cms都是一個很好地學習。

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

比如織夢,ecshop這類模板引擎系統(tǒng),研究它們的原理,就是從安裝根目錄的index.php看起來,看看都引入了那些文件,這些文件又起到了什么作用。

織夢的index首先判斷了/data/common.inc.php這個文件存不存在,存在就是已經(jīng)安裝過了,否則就是沒安裝過,跳到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)函數(shù),這個函數(shù)對post,get,global等變量進行了過濾處理,這樣使用更安全。

接下來引入系統(tǒng)常用變量

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

上傳變量

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

數(shù)據(jù)庫配置

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

系統(tǒng)安全配置

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

剩下的是一些常用目錄的設(shè)置,比如:

模板的存放目錄,插件目錄,會員目錄,專題列表,附件目錄等。

接下來引入數(shù)據(jù)庫的操作類:

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

剩下的是全局函數(shù)和模型控制的引入:

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

// 模塊MVC框架需要的控制器和模型基類

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

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

這些就是include/common.inc.php包含的內(nèi)容,接下來,index.php 引入了

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

這個是模板解析類,有了它,通過調(diào)用它的方法Display,就可以加載模板文件,并顯示了。

版權(quán)聲明: 本站資源均來自互聯(lián)網(wǎng)或會員發(fā)布,如果侵犯了您的權(quán)益請與我們聯(lián)系,我們將在24小時內(nèi)刪除!謝謝!

轉(zhuǎn)載請注明: DedeCms文件加載順序原理介紹

標簽:  
模板推薦