admin 发表于 2014-2-22 16:32:35

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


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


为什么要了解这个技巧
1、通过php代码可以在不支持灵动标签的页面中调用信息。
2、通过php代码来调用信息更灵活,可以支持标签无限嵌套的效果。

如何用PHP代码实现灵动标签的功能
我们先看下灵动标签语法:


模板代码内容


上面对应的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?>
                <?php
      }
      ?>

      模板代码内容 <?=$bqr?>
      <?php
}
?>

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




页: [1]
查看完整版本: 帝国CMS用PHP代码实现灵动标签的技巧