直接上圖。
其實核心還是用到3.8的問答系統模板裡新增的函式getlistbysql
{eval $cat1questionlist=$this->getlistbysql(“select * from “.$this->db->dbprefix.”question where cid=`呼叫分類id`order by answers desc limit 0,10”);}
表示是或者指定分類下的問題列表,然後儲存到$cat1quesitonlist物件陣列裡。
這樣直接通過loop方式迴圈物件,然後列印內容到html標籤裡賦值。
全部樣例程式碼我貼出來
<ul>
<!--一次取10條,預設-->
{eval $cat1questionlist=$this->getlistbysql("select * from ".$this->db->dbprefix."question where cid=`呼叫分類id`order by answers desc limit 0,10");}
<!--如果當前分類id下問題存在就顯示-->
{if $cat1questionlist}
<!--迴圈顯示載入獲取的問題物件陣列,$index索引從0開始,$myquestion為自己命名的問題物件-->
{loop $cat1questionlist $index $myquestion}
<li>
<a href="{url question/view/$myquestion[`id`]}">{$myquestion[`title`]}</a>
</li>
{/loop}
{/if}
</ul>
上面程式碼中的$myquesion是自定義的,其實來自資料庫表中的每一行記錄