校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 網站建設 > 建站知識 > 詳細分析和修改織夢系統主頁(管理后臺首頁主

詳細分析和修改織夢系統主頁(管理后臺首頁主

POST TIME:2020-04-11 21:19

這里說的“系統主頁”指的是當我們進入后臺后,看到的界面,為了方便大家理解,這里截取一張織夢系統主頁圖如下。
今天我們就對這個界面用到的php源碼和模板進行分析,并對這個界面進行修改。簡明扼要的說概括今天的目標:
1.分析源碼;2.修改界面
我們通過“如何查找織夢模板”這個教程,打到系統主頁界面(接下來直接用界面指系統主頁界面)對應的php文件是:http://www.dedebase.com/dede/index_body.php,這個php文件,比較重要,因為他是這個界面的一個入口,所有你在這個界面看到的,能操作的都通過這個php文件來實現。
我們來分析一下這個php文件,首頁打開文件,最前面的一塊,就是本文下面的這六行代碼,前三行是引入文件,第四、五行是動態定義以txt為后綴的文件,最后一行,是判斷第五行文件是不是存在,如果不存在就重新定義一個。
require(dirname(__FILE__).'/config.php');
require(DEDEINC.'/image.func.php');
require(DEDEINC.'/dedetag.class.php');
$defaultIcoFile = DEDEDATA.'/admin/quickmenu.txt';
$myIcoFile = DEDEDATA.'/admin/quickmenu-'.$cuserLogin->getUserID().'.txt';
if(!file_exists($myIcoFile)) $myIcoFile = $defaultIcoFile;
接下來織夢給我們寫好了是“默認主頁”,也就是引入織夢模板,如下圖所示
織夢用了一個if語句來判斷引入哪個文件,一般織夢默認是引用templets/index_body.htm這個模板的,除非以move-開頭的txt文件存在,而這個文件一般不存在的,若存在就引入模板templets/index_body_move.htm,用方框框起來的是引入必要的php文件,初始化和判斷等,這里不作多解釋。
現在我們知道了,這個管理后臺首頁主體界面模板,先暫時停止分析index_body.php這個文件,接下來我們分析這個php文件對應的模板文件,然后再接著分析index_body.php。我們打開index_body.htm模板文件,建立大家打開這個文件,那些引入的js,css這里暫不作分析,先看主要的,向下看,你會發現后臺界面最上方的“”,在這個模板文件里對應起來了,說明模板沒有找錯,織夢模板,一般是和對應的php文件名對應且一般都放在同一目錄里面的templets文件夾里面,如果你用織夢做模板多了,你就會發現這個特點。
現在我們試著修改一下“”這一行字,看看效果。
接下來向下看,我們看到<?php echo $cfg_soft_enname; ?> 更新消息,這與后臺界面上面的“DedeCMS更新消息”是不是一個東西呢?答案是肯定的,只不過在模板里面,DedeCMS 用<?php echo $cfg_soft_enname; ?>來代替了,為什么要代替呢?因為,<?php echo $cfg_soft_enname; ?>是動態變化的,也就是他代表了一個軟件名稱,你可以叫Dedecms,可以叫Bebecms,隨便起,所以,這里用了一段php代碼來動態顯示。
這一塊里面的用了一段php代碼,如下圖4所示:
這段代碼在后臺界面對應下圖5所示:
商業授權查詢這段代碼,直接引入一個ifram框架,重點看一下index_body.php?dopost=showauth這個代碼,現在我們返回index_body.php文件,在文件最后找到一個判斷,else if ($dopost=='showauth')這個判斷就是當dopost=showauth時,調用模板文件templets/index_body_showauth.htm。這個index_body.php?dopost=showauth代碼里面的問號“?”的意思就是在index_body.php里面,調用當dopost=showauth時的內容。
同理如果代碼變成index_body.php?dopost=showad 這樣,意思就是在index_body.php文件里,當dopost=showad時,調用模板templets/index_body_showad.htm。
反回模板index_body.htm文件接著向下看,你會發現,后臺對應的“快捷操作”版塊,這一塊有二個功能“新增”和“管理”功能,大家可以增加和管理一下試一下,新增通過一個javalscript 鼠標點擊事件,調用AddNew()函數,這個函數在index_body.php文件里面從“增加新項”一直到“載入右邊內容”結束,這段代碼就是用來實現“新增”功能的。
另一個函數ListAll(),這個是一個javalscript函數,這個函數在js/indexbody.js文件里面,js代碼如下:
function ListAll(){
$DE('editTab').style.display = 'block';
var myajax = new DedeAjax($DE('editTabBody'));
myajax.SendGet('index_body.php?dopost=editshow');
}
不要看這一小段代碼,用到的技術非常多,其中ajax綜合技術,這里不多講,這個函數的意思是發送index_body.php?dopost=editshow請求,到這里實際上和函數AddNew()遠行就完全相同了。當dopost=editshow時,在index_body.php里執行“修改快捷操作”。
再向下看,就是“系統基本信息”這一塊了,這一塊沒有什么好說的,都比較容易理解,其中里面的javascript:showMore(),用到了頭部定義的js代碼,在最上面。
下面的“程序團隊”版塊,也比較簡單,就是幾個固定的內容。
下面是贊助商廣告版塊,這個我們一般直接刪掉,因為,后臺在加載的時候,這個要占用服務器資源,一般情況我們都刪掉。刪也比較好刪,上面的織夢都給我們標好了,到哪里結束。
下面的“統計信息”用的是js知識,動態生成的。
最新文檔這個版塊,用了一大段的代碼,直接用select 查詢數據庫,然后用foreach把數組里面的數據循環出來,這樣的php代碼一般都在php文件里,在模板里特別是在前臺模板都沒有出現過,一般在后臺模板里會出現這樣的php代碼
總結:這個界面主要是在模板index_body.htm里改,如果您想詳細了解這個模板里面的功能的話,那么,最主要的就用到index_body.php代碼了,要分析這里面的代碼要相當的php知識,由于我們的教程主要是模板或界面修改,所以,基本上都是大體解釋一下,本教程中還提到javalscript,ajax等相關知識,特別是ajax是一門綜合性技術,以后我們會詳細講解。


收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
主站蜘蛛池模板: 扶风县| 凤翔县| 阿克苏市| 房山区| 阜平县| 嫩江县| 邛崃市| 潼南县| 宜兰县| 昌江| 阳朔县| 桂东县| 忻州市| 崇义县| 大理市| 顺义区| 镇康县| 简阳市| 华安县| 内丘县| 万载县| 红原县| 海丰县| 丹江口市| 新津县| 水城县| 新乡市| 克什克腾旗| 吴堡县| 乌苏市| 焦作市| 山阳县| 将乐县| 武城县| 塔河县| 博罗县| 凤庆县| 甘谷县| 龙川县| 大邑县| 萍乡市|