discuz模板标签机制

Discuz采用类似php的标签机制,基本是html 如果设置到业务逻辑的

模式是这样

<!--{ 代码内容 }-->

1 <!--{if $prompts['newbietask'] && $newbietasks}-->{template task_newbie_js}<!--{/if}-->




<!--{if $prompts['newbietask'] && $newbietasks}-->

<!--{/if}-->

其实就是

if $prompts['newbietask'] && $newbietasks
   方芳芳
/if

条件判断

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

if 条件
  执行这个
否则 if 另一个条件
  执行另外的
否则
  执行那个
结束条件

不带下标变量的数组循环

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

例如 下面这个 就是 楼层的循环

  • <!--{loop $postlist $post}-->
  •         <div id="post_$post[pid]">
  •                 {subtemplate viewthread_node}
  •         </div>
  • <!--{/loop}-->


复制代码
带下标变量的数组循环<!-{loop $array $key $value}->
   statement
<!-{/loop}->
相当于 PHP 的数组循环语句:foreach($array as $key => $value) {
  statement
}

预览源代码打印关于

01 <!--{if $forum['ismoderator']}-->

 

02         <script type="text/javascript" src="{$jspath}moderate.js?{VERHASH}"></script>

 

03 <!--{/if}-->

 

04  

 

05 <!--{if $thread['special']}-->

 

06         <link rel="stylesheet" type="text/css" href="forumdata/cache/style_{STYLEID}_special.css?{VERHASH}" />

 

07 <!--{/if}-->

 

08  

 

09 <script type="text/javascript" src="{$jspath}viewthread.js?{VERHASH}"></script>

 

10 <script type="text/javascript">zoomstatus = parseInt($zoomstatus);var imagemaxwidth = '{IMAGEMAXWIDTH}';var aimgcount = new Array();</script>

 

11  

 

12 <div id="nav">

 

13         <!--{if $forumjump == 1}--><a href="$indexname" id="fjump" onmouseover="showMenu({'ctrlid':this.id})" class="dropmenu">$bbname</a><!--{else}--><a href="$indexname">$bbname</a><!--{/if}-->$navigation

 

14 </div>
posted @ 2014-02-20 15:08  念雷星  阅读(230)  评论(0编辑  收藏  举报