Discuz!模版文件定位
一般情況下
特殊情況下
理解php的include機制
頭部文件
1
2 3 4 5 6 7 |
<!DOCTYPE html!> <html> <head> <meta charset="utf-8"> </head> </html> <body> |
主文件
1
2 3 |
<?php include 'head.php' ?> <p>這里是內容</p> <?php include 'foot.php' ?> |
尾部文件
1
2 |
</body> </html> |
Discuz!X子模版調用標簽
作用:通過調用子模版,實現模版分離,提升模版復用率。
使用方法:
template子模版目錄/子模版文件名
subtemplate子模版目錄/子模版文件名
subtemplate相對於template執行效率更高一下
1
2 3 |
<!--{template common/header}--> <p>內容</p> <!--{template common/footer}--> |
Discuz!X變量輸出標簽
作用:輸出變量的值,支持多維數組,變量嵌套方式。
使用方法:{$變量名}或$變量名
1
2 3 4 |
<!--{template common/header}--> <p>{$_G['uid']}</p>用戶id值 <p>{$_G['username']}</p>用戶名 <!--{template common/footer}--> |
Discuz!X常量輸出標簽
作用:輸出常量值
使用方法:{常量名}
1
2 3 4 |
<!--{template common/header}--> <p>{TIMESTAMP}</p>當前時間的時間戳 <p>{DISCUZ_ROOT}</p>根目錄的絕對路徑 <!--{template common/footer}--> |
Discuz!X萬能輸出標簽
輸出任意的值,支持變量、常量、函數、對象屬性、對象方法、PHP語句等
使用方法:{echo 輸出的代碼}
1
2 3 4 5 |
<!--{template common/header}--> <p>{echo $_G['username']}</p>用戶名 <p>{echo 'ppc'}</p>標准字符串 <p>{echo 1+2}</p>輸出值3 <!--{template common/footer}--> |
Discuz!X運行單行代碼標簽
作用:執行任意的單行php代碼
使用方法:{eval 任意PHP代碼}
1
2 3 4 |
Discuz!X運行多行代碼標簽
作用:執行任意的多行php代碼
使用方法:{ecal}php代碼{/ecal}
1
2 3 4 5 6 7 |
注意dzx2.5版本可使用eval
Discuz!X輸出頭像標簽
作用:輸出指定的用戶ID頭像,支持大中小三種尺寸
使用方法:
1
2 3 4 5 6 7 8 |
{avatar(用戶ID,'big')} {avatar(用戶ID,'medium')} {avatar(用戶ID,'small')} <!--{template common/header}--> {avatar(1,'big')}調用的大頭像 {avatar(1,'medium')}調用的中頭像 {avatar(1,'small')}調用的小頭像 <!--{template common/footer}--> |
Discuz!X循環數值標簽
作用:對存儲在PHP數組的數據進行遍歷
使用方法:
{loop $數組名 $值}{/loop}
1
2 3 4 5 6 7 8 9 10 11 12 13 |
{loop $數組名 $索引 $值}{/loop}
1
2 3 4 5 |
<ul> {loop $phpchina $key $value} <li>{$key} {$value}</li> </loop> </ul> |
Discuz!X邏輯判斷標簽
作用:實現高度定制化的流程控制處理
使用方法:
1
2 3 4 |
{if 條件} {elseif 條件} {else} {/if} |
1
2 3 4 5 6 |
二、當if執行失敗執行{else}
1
2 3 4 5 6 7 8 |
三、當1的時候顯示“值是1”,當值是2的時候顯示“值是2”,否自“不是1,也不是2”