1. 程式人生 > >帝國導航後二級呼叫及無線迴圈

帝國導航後二級呼叫及無線迴圈

為什麼要了解這個技巧
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變數名改下就可以了。