PBootCMS 提供了丰富的模板标签和条件判断功能,帮助开发者实现各种动态效果。以下是常用的 13 个 IF 判断语句及其具体应用示例。
用途: 用于非首页的导航高亮。
语法:
html
{pboot:if('[nav:scode]'=='{sort:tcode}')}class="active"{/pboot:if}
完整示例:
html
{pboot:nav}[nav:name]{/pboot:nav}
用途: 判断导航是否有子菜单。
语法:
html
{pboot:if('[nav:soncount]'>0)}...{/pboot:if}
示例 1: 二级栏目循环判断
html
{pboot:nav}<li><a href="[nav:link]">[nav:name]</a>{pboot:if('[nav:soncount]'>0)}<div>{pboot:2nav parent="[nav:scode]"}<a href="[2nav:link]">[2nav:name]</a>{/pboot:2nav}</div>{/pboot:if}</li>{/pboot:nav}
示例 2: 判断是否链接赋值
html
{pboot:nav}<li><a {pboot:if('[nav:soncount]'>0)}href="javascript:;" {else}href="[nav:link]" {/pboot:if}>[nav:name]</a></li>{/pboot:nav}
用途: 内页子菜单高亮。
语法:
html
{pboot:if('[nav:scode]'=='{sort:scode}')}class="active"{/pboot:if}
示例:
html
{pboot:nav parent="{sort:tcode}"}
<li {pboot:if(''[nav:scode]''==''{sort:scode}''})class="active"{/pboot:if}><a href="[nav:link]">[nav:name]</a></li>{/pboot:nav}
用途: 当标签为空时不显示内容。
语法:
html
{pboot:if('{pboot:companyqq}'!="")}QQ:{pboot:companyqq}{/pboot:if}
用途: 判断列表页是否有内容,没有内容时返回提示。
语法:
html
{pboot:if('{page:rows}'>0)}{page:bar}{else}暂无内容{/pboot:if}
示例:
html
{pboot:if('{page:rows}'>0)}<div class="page"><a href="{page:index}">首页</a><a href="{page:pre}">上一页</a>{page:numbar}<a href="{page:next}">下一页</a><a href="{page:last}">尾页</a></div>{else}<div class="page">暂无内容</div>{/pboot:if}
用途: 在第一页时隐藏首页和上一页按钮,在最后一页时隐藏下一页和尾页按钮。
语法:
html
{pboot:if('{page:rows}'>0)}<div class="page"><a href="{page:index}"{pboot:2if(''{page:current}''==1)}class="hide"{/pboot:2if}>首页</a><a href="{page:pre}"{pboot:2if(''{page:current}''==1)}class="hide"{/pboot:2if}>上一页</a>{page:numbar}
<a href="{page:next}"{pboot:2if(''{page:current}''==''{page:count}'')}class="hide"{/pboot:2if}>下一页</a><a href="{page:last}"{pboot:2if(''{page:current}''==''{page:count}'')}class="hide"{/pboot:2if}>尾页</a></div>{else}<div class="page">暂无内容</div>{/pboot:if}
用途: 常用于 Banner 和 Tab 选项卡。
语法:
html
{pboot:if(''[xx:i]''=='1')}class="active"{/pboot:if}
示例:
html
{pboot:nav}
<a href="[nav:link]" {pboot:if(''[nav:i]''=='1')}class="active"{/pboot:if}>[nav:name]</a>{/pboot:nav}
html
{pboot:list}
<a href="[list:link]" {pboot:if(''[list:i]''=='1')}class="active"{/pboot:if}>[list:title]</a>{/pboot:list}
html
{pboot:slide gid=* num=*}
<img src="[slide:src]" {pboot:if(''[slide:i]''=='1')}class="active"{/pboot:if}>
{/pboot:slide}
用途: 判断内容页是否有多个图片,如果没有则显示缩略图。
语法:
html
{pboot:if('{content:ispics}'==1)}...多图...{else}...缩略图...{/pboot:if}
示例:
html
{pboot:if('{content:ispics}'==1)}<ul>{pboot:pics id="{content:id}" num=5}<li><img src="[pics:src]" /></li>{/pboot:pics}</ul>{else}<img src="{content:ico}" />{/pboot:if}
用途: 判断列表中的当前文章是否高亮。
语法:
html
{pboot:if(''[list:link]''=='{content:link}')}class="active"{/pboot:if}
示例:
html
<ul>{pboot:list scode="{sort:tcode}" num=10 order='visits'}
<li {pboot:if(''[list:link]''=='{content:link}')}class="active"{/pboot:if}><a href="[list:link]">[list:title]</a></li>{/pboot:list}</ul>
用途: 判断奇偶数,实现隔行变色。
语法:
html
{pboot:if('[list:i]'%2==0)}...{/pboot:if}
示例:
html
<ul>{pboot:list num=10}
<li {pboot:if('[list:i]'%2==0)}class="bg-dark"{/pboot:if}><a href="[list:link]">[list:title]</a></li>{/pboot:list}</ul>
用途: 从指定位置开始显示导航。
语法:
html
{pboot:if(''[nav:i]''>'2')}...{/pboot:if}
示例:
html
{pboot:nav}
{pboot:if(''[nav:i]''>'2')}<li><a href="[nav:link]">[nav:name]</a></li>{/pboot:if}
{/pboot:nav}
用途: 隐藏特定 scode 的菜单项。
语法:
html
{pboot:if('[nav:scode]'==2||'[nav:scode]'==4||'[nav:scode]'==6)}style="display: none;"{/pboot:if}
示例:
html
{pboot:nav}
<li {pboot:if('[nav:scode]'==2||'[nav:scode]'==4||'[nav:scode]'==6)}style="display: none;"{/pboot:if}><a href="[nav:link]">[nav:name]</a></li>{/pboot:nav}
用途: 在导航栏中居中显示 logo。