您当前的位置:首页 > 帝国CMS教程

帝国CMS用PHP代码实现灵动标签的技巧

来源:帝国CMS教程发布者:帝国CMS模板网时间:2014-09-24



为什么要了解这个技巧

1、通过php代码可以在不支持灵动标签的页面中调用信息。

2、通过php代码来调用信息更灵活,可以支持标签无限嵌套的效果。


如何用PHP代码实现灵动标签的功能

我们先看下灵动标签语法:

[e:loop={栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序}]

模板代码内容

[/e:loop]


上面对应的PHP函数是:

sys_ReturnEcmsLoopBq(栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序)


灵动标签实际对应的原型PHP代码为如下:

<?php

$ecms_bq_sql=sys_ReturnEcmsLoopBq(栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序);

$bqno=0;

while($bqr=$empire->fetch($ecms_bq_sql))

{

       $bqsr=sys_ReturnEcmsLoopStext($bqr);

       $bqno++;

       ?>

       模板代码内容

       <?php

}

?>



怎么做能实现标签无限嵌套的效果?下面举例:

<?php

$ecms_bq_sql=sys_ReturnEcmsLoopBq(栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序);

$bqno=0;

while($bqr=$empire->fetch($ecms_bq_sql))

{

       $bqsr=sys_ReturnEcmsLoopStext($bqr);

       $bqno++;

       ?>

       

       <?php

       $ecms_bq_sql2=sys_ReturnEcmsLoopBq(栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序);

       $bqno2=0;

       while($bqr2=$empire->fetch($ecms_bq_sql2))

       {

               $bqsr2=sys_ReturnEcmsLoopStext($bqr2);

               $bqno2++;

               ?>

               模板代码内容2 <?=$bqr2[title]?>

               <?php

       }

       ?>


       模板代码内容 <?=$bqr[title]?>

       <?php

}

?>


红色部分是二次嵌套,还可以加三次、四次...,由上可以看出通过PHP代码是可以实现标签无限嵌套,只要$ecms_bq_sql、$bqno、$bqr、$bqsr变量名改下就可以了。