discuz(一)

一、discuz目錄結構

/api
    uc.php UCenter通信文件
    /api/addons應用中心
    /api/connect騰訊互聯
    /api/googleGoogle引擎接口處理
    /api/javascript數據和廣告的 JS調用
    /api/manyoumanyou應用及搜索等相關服務
    /api/remote遠程更新?
    /api/trade支付寶、財付通等交易接口
/archiver論壇Archiver靜態化
/config程序配置文件
    config_global.php論壇核心參數配置文件
    config_ucenter.phpUCenter核心參數配置文件
    config_global_default.php論壇核心參數配置文件(例子)
    config_ucenter_default.phpUCenter核心參數配置文件(例子)
/data附件數據、數據庫與文件緩存
    stat_setting.xml站點統計FLASH配置文件
    tinyipdata.datIP數據庫
    /data/addonmd5應用中心在線安裝緩存目錄
    /data/attachment程序附件上傳存放目錄
    /data/attachment/album相冊
    /data/attachment/category房產
    /data/attachment/common公共目錄
    /data/attachment/forum論壇
    /data/attachment/group群組
    /data/attachment/portal門戶
    /data/attachment/profile
    /data/attachment/swfupload
    /data/attachment/temp臨時附件存放目錄
    /data/avatar/用戶頭像(棄用)
    /data/backup_***數據備份存放目錄
    /data/cache運行數據緩存目錄
    /data/download應用中心模板插件在線安裝緩存目錄
    /data/ipdata/IP數據庫
    /data/log系統運行記錄存放
    /data/plugindata插件設計模式語言包
    /data/template模板緩存目錄
    /data/threadcache帖子緩存目錄
/install安裝程序
    index.php 安裝程序入口
    /install/data安裝程序數據庫
    common_district_1.sql 地區數據包
    common_district_2.sql 地區數據包
    common_district_3.sql 地區數據包
    group_index.xml群組首頁DIY安裝數據
    install.sql 數據表安裝包
    install_data.sql 數據表數據包
/install/images 安裝程序附件包
/install/include安裝程序文件包
    install_extvar.php雜項
    install_function.php核心庫
    install_lang.php語言包
    install_mysql.php數據庫處理
    install_plugin.php插件出理想
    install_var.php雜項
/source/ 程序模塊功能處理目錄
    /discuz_version.php 程序版本號存放文件
    /source/admincp 后臺管理[查看該目錄文件標注]    (http://discuzt.cr180.com/discuzcode-dir_class#dirons_0.1)
    /source/archiver論壇Archiver靜態化程序目錄[查看該目錄文件標注](http://discuzt.cr180.com/discuzcode-dir_class#dirons_0.2)
    /source/include程序功能處理目錄[查看該目錄文件標注](http://discuzt.cr180.com/discuzcode-dir_class#dirons_0.5)
    /source/language程序語言包(如不清楚,請打開各個文件查看)[查看該目錄文件標注](http://discuzt.cr180.com/discuzcode-dir_class#dirons_0.6)
    /source/module程序功能模塊程序包[查看該目錄文件標注](http://discuzt.cr180.com/discuzcode-dir_class#dirons_0.7)
    /source/plugin插件程序擴展目錄[查看該目錄文件標注](http://discuzt.cr180.com/discuzcode-dir_class#dirons_0.8)
    /source/functionDX自定義函數庫[查看該目錄文件標注](http://discuzt.cr180.com/discuzcode-dir_class#dirons_0.4)
    /source/class核心類庫[查看該目錄文件標注](http://discuzt.cr180.com/discuzcode-dir_class#dirons_0.3)
/template模板目錄[查看該目錄文件標注](http://discuzt.cr180.com/discuzcode-dir_template)
/uc_client UCenter客戶端
/uc_server UCenter服務端
/static程序界面元素附件存放目錄
    /static/image/admincp后臺界面附件包
    /static/image/click表態圖標
    /static/image/common全局界面附件包
    /static/image/diyDIY模式附件包
    /static/image/doodle風格預覽圖標
    /static/image/editor編輯器相關附件
    /static/image/feed家園雜項附件
    /static/image/filetype上傳附件格式圖標
    /static/image/foreground
    /static/image/help幫助信息附件(棄用)
    /static/image/magic道具圖標
    /static/image/mobileWAP預覽界面附件
    /static/image/poke打招呼圖標
    /static/image/seccode驗證碼相關附件
    /static/image/smiley表情
    /static/image/sound短消息提示音(棄用)
    /static/image/stamp管理圖標
    /static/image/stat
    /static/image/task任務
    /static/image/traderank論壇交易圖標
    /static/image/upgrade升級程序附件
    /static/space風格切換包
    /static/topic
        /t1/門戶專題風格包
        /t2/門戶專題風格包
根目錄文件
    admin.php后臺入口文件
    api.php合作API輸出
    archiver論壇Archiver閱讀模式(無圖版)
    connect.php云平臺接口文件
    cp.php多應用服務入口文件(加載userapp.php)
    crossdomain.xml
    favicon.ico站點ICO圖標
    forum.php論壇頻道入口文件
    group.php群組頻道入口文件
    home.php家園頻道入口文件
    index.php首頁
    member.php用戶入口文件(登錄、注冊、退出等)
    misc.php程序雜項擴展入口
    plugin.php插件入口文件
    portal.php門戶入口文件
    robots.txt搜索引擎限制文件
    search.php搜索頻道入口
    userapp.php多應用服務入口文件

二、模板語法
1.變量輸出
輸出一個變量的值,等同于php的 <?php echo $my_var;?>,花括號可以省略但不建議去掉。

{$my_var}

2.條件判斷
通過if判斷流程分支
如果寫在HTML表單元素中,可以省去使代碼更清晰易讀,如{if $my_var}xxx{/if}

<!--{if $my_var}-->
    任意html語句
<!--{/if}-->

帶有多條件的if寫法,可使用PHP常規判斷中的按位運算符等

<!--{if $my_var && ($my_var2 & 1 || $my_var3 == 3)}-->
    任意html語句
<!--{/if}-->

帶有分支條件的if寫法

<!--{if $my_var == 1}-->
    變量為1
<!--{elseif $my_var == 2}-->
    變量為2
<!--{else}-->
    其他情況
<!--{/if}-->

3.循環輸出
帶有數組鍵的循環寫法

<!--{loop $my_arr $key $val}-->
    循環輸出的HTML語句
<!--{/loop}-->

沒有數組鍵的循環寫法

<!--{loop $my_arr $val}-->

4.模板嵌套
將被嵌套模板內容解析為PHP語句并合并入本模板中的寫法
common/header 對應某個模板套系中的common目錄的header.htm模板文件

<!--{subtemplate common/header}-->
    程序運行時include嵌套模板內容
<!--{template common/header}-->

5.插件鉤子
在模板中設立插件鉤子
hook為關鍵詞,意為將index_top定義為鉤子

<!--{hook/index_top}-->

6.變量數組嵌套使用
條件判斷或變量輸出時用到

<!--{if $my_arr[$my_var]}-->
<!--{if $my_arr[0]}-->
<!--{if $my_arr[$my_arr2[$my_var]]}-->

7.PHP解析
在模板中使用PHP語句可以通過{eval}進行

<!--{eval $my_var = 1;}-->
<!--{eval echo $my_var;}-->
<!--{eval $my_arr = array(1, 2, 3);}-->
<!--{eval print_r($my_arr);}-->
<!--{eval output();}-->
<!--{eval exit();}-->

多行PHP解析(Discuz! X3 新增)

<!--{eval}-->
...PHP語句...
<!--{/eval}-->

8.語言包使用
在模板中可以通過下面的代碼來使用語言包中的某個值

{lang index_yesterday}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容