• 欢迎访问彩红网,3D模型下载,平面素材,网站源码,ppt模板下载,专利检索,设计软件下载,cad图纸下载
  • 赞助本站:点击进入
  • 彩红网原论坛网址:点击进入
  • 赞助本站:点击进入

destoon模板制作教程> 给tag()参数正确传值方法

网站源码 彩红网 4周前 (02-25) 73次浏览 已收录 0个评论 扫描二维码

给 tag()参数传值的三种方式

一、传数字
传数字是最简单的,直接在参数的等于号后面写上要传的数字就行了,如:&catid=1205

二、传文字(字符串)
传文字类型的字符串,需要给文字加上”(单引号),如:&title=’彩红网’。
字符串类型的值,在 tag()自带的参数只有 &condition 的值里会用到,其它参数都用不上。
示例:

 <!--{tag("moduleid=5&condtion=status=3 and title like '%彩红网%'&pagesize=10&order=addtime desc")}-->

三、传变量
变量有三种情况
1、变量值为数字
例如我们有一个变量:$catid = 1025; 这个变量是在 php 里面申明的,或者从 url 中获取到的。
tag()中传值方法: &catid=$catid
就像传数字一样,直接将变量写到等于号后面就好了。

2、变量值为字符串
例如我们有一个变量:$kw = ‘彩红网’;
tag()中传值方法: &condition=title like ‘%$kw%’
字 符串传只有在 condtion 参数的值里会用到

3、变量名为二维
例:我们有一个项目,先要从分类表里调出当前频道的顶级分类,然后再循环调出每个分类的子分类

代码如下:

       <!--{php $tags=tag("table=category&condition=parentid=0 and moduleid=5&pagesize=10&order=listorder asc&template=null");}-->
       {loop $tags $i $t}
       <li><a href="{cat_url($t[catid])}">{$t[catname]}</a></li>
       
       {/loop}

通过上面的代码,我们已成功调出顶级分类了,有过其它 cms 模板标签调用的小伙伴一定,需要调出子分类,需要在大循环里再把分类调用代码再小循环一次,并且把小循环的条件中分类上级 id 改成大循环中获取的 分类 id。

我们来看顶级分类调用中 condition 的值中我们使用 prarentid=0,表示调用 prarentid 值为 0 的分类,也就是顶级分类。
如果我们调出某个顶级分类下面的子分类,只需要把这个 0 改成对应的顶级分类的 id 就行了。
现在我们获取的一大分类的 id 是一个变量 $t[‘catid’],按照我们的思路将调用代码复制一遍,插入循环中,并且把 prarentid=0 改成 prarentid=$t[‘catid’]

代码如下:

      
       <!--{php $tags=tag("table=category&condition=parentid=0 and moduleid=5&pagesize=10&order=listorder asc&template=null");}-->
       {loop $tags $i $t}
       <li><a href="{cat_url($t[catid])}">{$t[catname]}</a></li>
         <!--二级分类循环开始-->
         <!--{php $sub=tag("table=category&condition=parentid=d=$t['catid'] and moduleid=5&pagesize=10&order=listorder asc&template=null");}-->
       {loop $sub $k $v}
       <li><a href="{cat_url($v[catid])}">{$v[catname]}</a></li>
        <!--二级分类循环结束-->
       {/loop}
         
       {/loop}
       

改好了保存到模板里,刷新下页面,是不是报错了。
这是因为我们在传入二维变量作为值时,没有使用 php 连接符的原因,原理我们这里就不解释了,做模板不要求我们会 php。
我们只需要将代码修改下
parentid=d=$t[‘catid’] 改成 parentid=d=”.$t[‘catid’].”
这样就不会报错了,正常调出子分类。

        
      <!--{php $tags=tag("table=category&condition=parentid=0 and moduleid=5&pagesize=10&order=listorder asc&template=null");}-->
       {loop $tags $i $t}
       <li><a href="{cat_url($t[catid])}">{$t[catname]}</a></li>
         <!--二级分类循环开始-->
         <!--{php $sub=tag("table=category&condition=parentid=d=".$t['catid']." and moduleid=5&pagesize=10&order=listorder asc&template=null");}-->
       {loop $sub $k $v}
       <li><a href="{cat_url($v[catid])}">{$v[catname]}</a></li>
        <!--二级分类循环结束-->
       {/loop}
         
       {/loop}
          

特别注意: 如果$t[catid]的变量值不是数字是字符串,得加上加”单引号,修改结果: parentid=d='”.$t[‘catid’].”‘

本章小结:
本节课的要点是传变量时的三种情况,变量为二维时记得加连接符,变量值为字符串要加单引号 ”。


彩红网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:destoon 模板制作教程> 给 tag()参数正确传值方法
喜欢 (0)
[微信打赏]
分享 (0)
关于作者:
喜欢收集一些资料,也愿意分享给大家,如果大家也有资料分享的话可以加我QQ:2766242327或者加QQ群:454824364

您必须 登录 才能发表评论!