zdcms当前栏目高亮几种循环调用中的写法

zdcms当前栏目高亮几种循环调用中的写法

常用的栏目调用时判断栏目高亮原理是栏目变量catids数组存储的是此栏目的id集合,开发者可以利用当前栏目id是否存在于这个集合中来判断高亮,例如:

{if  in_array($栏目id号, $循环体前缀字母.catids)} active{/if}

共享栏目判断高亮:

{category ********}
在循环体中判断当前栏目高亮显示
{if IS_SHARE && $catid && in_array($catid, $t.catids)} active{/if}
{/category}

独立栏目判断高亮:

{category module=news ********}
在循环体中判断当前栏目高亮显示
{if MOD_DIR == "news" && $catid && in_array($catid, $t.catids)} active{/if}
{/category}

但是偶尔会遇到特殊情况,我们需要判断当前栏目有子栏目就调用子栏目,没有子栏目就循环调用同级栏目的调用方法,如下;

{loop $related $c}
 <li><a href='{$c.url}' {if $c.id==$cat.id} class="active link"{else} class="link"{/if}>{$c.name}</a></li>
{/loop}

其中判断当前栏目高亮就要这样写;

{if $c.id==$cat.id} class="active link"{else} class="link"{/if}


评论