燕子cms模板标签语法介绍
发布时间:2020年12月10日 访问量:133

我们在《燕子cms模板基本标签介绍》一文里面介绍了燕子cms的模板标签,我们知道模板标签都是由开始标记“{”、结束标记“}”,以及标签内容组成的,并且我们介绍了基本标签。这一篇我们来进一步介绍标签语法。

为什么要使用标签语法?

因为我们在制作模板的时候,会遇到一些比较复杂的逻辑,例如循环输出,判断条件等,所以一旦我们使用模板语法,那么我们可以将模板写得很灵活。

接下来我们来介绍模板语法:

一、if语句

模板语法可以使用if语句,我们先来看一个例子:

{if logo != ''}
//HTML代码
{endif}

上面这个是if语句的一个例子,“if”后面跟一个空格,然后是条件,这里是“logo != ''”,表示网站的logo不为空。后面的“{endif}”表示if语句结束。整个if语句的意思是如果Logo不为空则输出其中的HTML代码。

我们还可以使用else语法,如下:

{if logo != ''}
//HTML代码1
{else}
//HTML代码2
{endif}

上面的代码添加了“{else}”,整个if语句的意思是如果满足if条件,那么输出HTML代码1,否则的话输出HTML代码2。

二、loop语句

燕子cms里面如果要循环输出内容,可以使用loop语句,我们先来看下面的例子:

{loop name="menu" item="item"}
//HTML代码
{endloop}

上面的例子就是一个loop语句,语句使用“{endloop}”结束,这个语句会循环输出中间的HTML代码。

loop语句里面的“item”表示每个循环输出项,如果我们要在中间的HTML代码里面输出对应菜单的名称,那么可以这样:

{loop name="menu" item="item"}
{item.name}
{endloop}

上面的代码省略了HTML代码,为了说明问题看得清楚。中间的“{item.name}”表示了loop的某个项的“name”,对于其他的输出内容也是类似的,结构都是“{item.标签名}”。

loop语句还可以有更多的属性,例如下面的代码:

{loop name="menu" item="item" key="k" offset=0 len=10}
//HTML代码
{endloop}

上面代码里面的key表示循环的序号,offset表示偏移量,len表示输出的数量。

三、exist语法

exist标签表示判断是否存在,当我们不能确定某个标签是否存在时,可以使用exist标签来进行判断。我们先来看下面的例子:

{exist links.home}
//HTML代码
{endexist}

上面的代码表示判断是否存在首页友情链接,如果存在的话,输出中间的HTML代码,同样地,需要有一个结束标签“{endexist}”。

我们还可以在exist语法里面使用else语句,如下:

{exist links.home}
//HTML代码1
{else}
//HTML代码2
{endexist}

这里的意思很明了,不再多分析了,跟if语句里面的else类似。




我要评论
共有0条评论
© 2020 - 2021 燕子CMS
Powered by Yanzi CMS
http://www.yanzicms.com/comment.html
http://www.yanzicms.com/message.html
http://www.yanzicms.com/favorites.html
http://www.yanzicms.com/likes.html