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”