首页 > 其他分享 >PbootCMS常用 if 判断

PbootCMS常用 if 判断

时间:2024-08-16 22:49:20浏览次数:8  
标签:常用 判断 name list nav scode pboot PbootCMS

1. 导航高亮

{pboot:if('[nav:scode]'=='{sort:tcode}')}class="active"{/pboot:if} //用于非首页

例:

{pboot:nav} 
<li {pboot:if('[nav:scode]'=='{sort:tcode}')}class="active"{/pboot:if}><a href="[nav:link]">[nav:name]</a></li>
{/pboot:nav}

2. 判断有无子菜单

{pboot:if([nav:soncount]>0)}...{/pboot:if}
例 1:

{pboot:nav} 
<li><a href="[nav:link]">[nav:name]</a> <!--一级菜单循环-->
{pboot:if([nav:soncount]>0)}  <!--当有子菜单时显示div-->
<div>
{pboot:2nav parent=[nav:scode]}
<a href="[2nav:link]">[2nav:name]</a> <!--二级菜单循环-->
{/pboot:2nav}
</div>
{/pboot:if}
</li>
{/pboot:nav}

例2:

{pboot:nav} 
<li><a {pboot:if([nav:soncount]>0)} href="javascript:;" {else} href="[nav:link]" {/pboot:if}>[nav:name]</a></li>  <!--无子菜单时显示正常链接,有子菜单时为空连接,用于手机端点击菜单滑出子菜单情况。-->
{/pboot:nav}

3. 内页子菜单高亮

{pboot:if('[nav:scode]'=='{sort:scode}')}class="active"{/pboot:if}

例:

{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}

4. 判断标签为空时不显示

{pboot:if('{pboot:companyqq}'!='')}QQ:{pboot:companyqq}{/pboot:if}  <!--同理也可用在文章详情页-->

5. 判断列表页有无内容,无内容返回提示

{pboot:if({page:rows}>0)}{page:bar}{else}暂无内容{/pboot:if}

例:

{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}

6. 分页判断进阶,在第一页时隐藏首页和上一页按钮,在最后一页时隐藏下一页和尾页按钮。

例:

{pboot:if({page:rows}>0)}
<div class="page">
<a href="{page:index}"{pboot:2if('{page:current}'==1)}class="hide"{/pboot:2if}>首页</a>  <!--在第一页时,当前页码‘{page:current}’等于1,添加‘hide’样式,.hide{dispaly:none;}-->
<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>  <!--在最后一页时,当前页码‘{page:current}’等于总页数‘{page:count},’添加‘hide’样式,.hide{dispaly:none;}-->
<a href="{page:last}"{pboot:2if('{page:current}'=='{page:count}')}class="hide"{/pboot:2if}>尾页</a><!--与上条同理-->
</div>
{else}
<div class="page">暂无内容</div>
{/pboot:if}

7.判断第一个循环项,并添加 class(常用于 banner 和 Tab 选项卡)

{pboot:if('[xx:i]'=='1')}class="active"{/pboot:if}

<!--第一个菜单添加 class="active"-->
{pboot:nav}
<a href="[nav:link]" {pboot:if('[nav:i]'=='1')}class="active"{/pboot:if}>[nav:name]</a>
{/pboot:nav}

<!--第一条文章添加 class="active"-->
{pboot:list}
<a href= "[list:link]" {pboot:if('[list:i]'=='1')}class="active"{/pboot:if}>[list:title]</a>
{/pboot:list}

<!--第一个轮播图添加 class="active"-->
{pboot:slide gid=* num=*}
<img src="[slide:src]" {pboot:if('[slide:i]'=='1')}class="active"{/pboot:if}>
{/pboot:slide}
<!--以上具体 [xx:i] 用法请参考官方手册,也可以用 jq 的选择器 + addclass-->

8.内容页判断有无多图,无多图显示缩略图

{pboot:if({content:ispics}==1)}..多图..{else}..缩略图..{/pboot:if}
例:

{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}

9.内容页判断列表中的当前文章高亮(右侧推荐文章中的其中一条,正好是当前打开的文章时)

{pboot:if('[list:link]'=='{content:link}')}class="active"{/pboot:if} //判断列表内链接等于本文链接
例:

<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>

10.奇偶数判断(隔行变色)

{pboot:if([list:i]%2==0)}...{/pboot:if}
例:

<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>  <!--等于0为偶数,等于1为奇数  .bg-dark{background:#000;}-->
{/pboot:list}
</ul>

11.判断导航从第几个开始

{pboot:if('[nav:i]'>'2')}……{/pboot:if} //从第二个开始
例:

{pboot:nav} 
{pboot:if('[nav:i]'>'2')}
<li><a href="[nav:link]">[nav:name]</a></li>
{/pboot:if}
{/pboot:nav}

12.隐藏指定 scode 的菜单

{pboot:if([nav:scode]==2||[nav:scode]==4||[nav:scode]==6)}style="display: none;"{/pboot:if} //隐藏 scode 为 2,4,6 的菜单id

注意这里的菜单id是指栏目编码,有些同学第一眼看成是菜单数量,不是菜单的数量不要错啦

例:

{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}

13.pbootcms导航栏logo居中判断

例:

{pboot:nav}
<a href="[nav:link]">[nav:name]</a>
{pboot:if([nav:i]==3)}
<img src="{pboot:sitelogo}">
{/pboot:if}
 {/pboot:nav}

上面的的[nav:i]=3意思就是当输出到第三个导航栏的时候,在输出logo样式

标签:常用,判断,name,list,nav,scode,pboot,PbootCMS
From: https://www.cnblogs.com/hwrex/p/18363781

相关文章

  • PbootCMS用于调导航菜单栏目列表,对应后台的“基础内容>内容栏目”
    适用范围:全站任意地方均可使用标签作用:用于调导航菜单栏目列表,对应后台的“基础内容>内容栏目”教程新增加pbootcms导航栏logo居中判断案例1、导航菜单列表{pboot:nav}<ahref="[nav:link]">[nav:name]</a>{/pboot:nav}控制参数:num=*数量,非必填,用于控制输出的数量parent=......
  • PbootCMS用于调取网站的基本配置信息,对应后台的“基础内容>站点信息”
    适用范围:全站任意地方均可使用标签作用:用于调取网站的基本配置信息,对应后台的“基础内容>站点信息”{pboot:siteindex}站点入口地址,用于地址前置引用{pboot:sitepath}站点路径,根目录时值为空{pboot:sitelanguage}站点语言{pboot:sitetitle}站点标题{pboot......
  • PbootCMS输出当前栏目的相关信息
    {sort:tcode}当前栏目的顶级栏目编码{sort:topname}当前栏目的顶级栏目名称{sort:toplink}当前栏目的顶级栏目链接{sort:pcode}当前栏目的父栏目编码{sort:parentname}当前栏目的父栏目名称{sort:parentlink}当前栏目的父栏目链接{sort:scode}当前......
  • Java 如何判断map为null或者空
    1.示例一在Java中,如果我们想判断一个Map是否为null或者空(即没有任何键值对),我们可以使用以下的方法。下面是一个完整的示例代码,展示了如何进行这样的判断:importjava.util.HashMap;importjava.util.Map;publicclassMapNullOrEmptyCheck{publicstaticvoidm......
  • python判断语句之if语句、比较和逻辑运算符、if...else...语句、if...elif...else语句
    文章目录1.介绍1.1顺序语句1.2判断语句1.3循环语句2.if语句的基本格式2.1判断语句介绍2.2程序中的判断2.3if语句的基本格式3.比较和逻辑运算符3.1比较运算符3.2逻辑运算符4.if...else...语句4.1if...else...的语法格式4.2实例5.if...elif...else...语......
  • 字符串比较的常用函数
    staticvoidMain(string[]arg){intint1=0;intint2=0;intint3=0;stringstr1="adf";stringstr2="adf";stringstr3="Adf";......
  • 常用函数式接口
    生产型接口Supplier简述该函数接口是Java8中的java.util.function包中的。包含一个get()作用延迟计算:在需要时才生成值,提高效率。简化代码:封装生成逻辑,避免重复代码。灵活性:可以与其他函数式接口结合使用,增强可组合性。无输入参数:专注于提供结果,适用于无......
  • git command 工作中常用命令备忘录
    模拟目前工作流程在gitlabfork需要开发的项目到自己仓库分配一个工作任务(feature、improvment、bug)本地从个人仓库克隆项目gitclonehttp://mylocal/group/project本地添加对于远端项目gitremoteaddupstreamhttp://dev.xxx.io/group/project基于远端仓库切出本......
  • 接口测试的常用协议
    接口测试的常用协议Http协议(超文本传输协议):HTTP是用于在网络上传输数据的常用协议。绝大多数的API都是基于HTTP协议的,使用HTTP方法(如GET、POST、PUT、DELETE等)进行通信。HTTPS(HypertextTransferProtocolSecure):HTTPS是HTTP的安全版本,通过使用SSL(SecureSocketsLayer......
  • Latex 常用符号
    文章目录一、希腊字母二、数学2.1常见数学符号2.2关系运算符2.2.1基本关系运算符2.2.2偏序关系运算符2.3集合2.4矩阵和行列式三、箭头3.1箭头符号3.2箭头上带其他符号一、希腊字母大写Latex公式小写Latex公式备注大写Latex公式小写Latex公式备注......