Discuz!X/模板标签说明

目录

  [隐藏]

 

条件判断

<!-{if expr1}->
	statement1
<!-{elseif expr2}->
	statement2
<!-{else}->
	statement3
<!-{/if}->

这是一个典型的条件模板,当条件 expr1 为真时,显示模板 statement1 内容,不然当 expr2 为真时,显示模板 statement2 内容,不然显示模板 statement3 的内容。如同其余语言中的条件控制同样,其中 <!-{elseif expr}-> 和 <!-{else} -> 是非必须的。php

 

不带下标变量的数组循环

<!-{loop $array $value}->
	statement
<!-{/loop}->

至关于 PHP 的数组循环语句:数据库

foreach($array as $value) {
	statement
}

 

带下标变量的数组循环

<!-{loop $array $key $value}->
	statement
<!-{/loop}->

至关于 PHP 的数组循环语句:数组

foreach($array as $key => $value) {
	statement
}

信息元素包围符

{CONSTANT}
能够引用界面替换变量,其中必须为大写字母,该符号实际的做用是引用 PHP 常量 CONSTANT,所以也能够经过它来引用其余的常量内容。ide

{lang variable}
能够在模板中引用语言变量 variable 的内容,语言变量经由 templates.php.lang 中数组 $language 定义。如 {lang post_edit} 的内容在编译模板的时候被替换为 $language['post_edit'] 的内容,简体中文版的意思是“编辑帖子”。oop

{template name}
模板嵌入符,为了不模板的冗长,能够使用本符号来将 name 模板的内容嵌入本模板中(实际上为引用)。post

{LF}
换行符,由于 Discuz! 模板引擎会忽略掉多余的换行(\n),这个符号用来成生须要的 \n。ui

{eval statement}
运行 PHP 语句体 statement。推荐只在特别必须的时候才使用该结构,由于它会破坏模板的结构和可读性。如 {eval echo 'template';} 实现的功能为echo 'template';idea

<!-{eval for ($i=1; $i<=5; $i++){ }->
<!-{eval echo "Hello World!";}->
<!-{eval}}->

等同于spa

for ($i=1; $i<=5; $i++){
	echo "Hello World!"
}

在dx3中,增长了一种用法,能够写整段的php代码模板引擎

<!-{eval}->
<!-
 function test(test) {
  return 'test';
 }
->
<!-{/eval}->

{date(timestamp,'Y-m-d')} 格式化时间

{avatar(uid,small)} 插入头像

插入子模板

<!-{subtemplate 路径/模板名}->
例如
<!-{subtemplate common/header_common}->

 

插入钩子

<!-{hook/viewthread_profileside $postcount}->

 

插入模块

<!-{block}->
<!-{blockdata}->

插入广告

<!-{ad/subnavbanner/a_mu}->

 

  • ad 广告 subnavbanner 广告类型 广告类型列表 a_mu 样式 还能够接更多的参数
  • 自定义广告类型以 custom_ + customid 命名

常量

{STATICURL} static/
{IMGDIR} static/image/common/
{TPLDIR} 模板路径
{CURMODULE}
{VERHASH}
{FORMHASH}
{NOTICETEXT}
{TIMESTAMP}
{CHARSET}
{STYLEID}
{BORDERCOLOR}
{SMFONTSIZE}
{SMFONT}
{UC_API}
相关文章
相关标签/搜索