一、作用
用于循環查詢模塊內容數據(支持分頁查詢)
二、語法
{list action=module module=模塊名稱 ....}{/list}
簡寫(3.2.19以上版本支持):{module module=模塊名稱 ....}{/module}
三、參數介紹(紅色表示必填參數,藍色表示系統默認參數)
參數 | 介紹 |
---|---|
action | module |
module | 模塊名稱,默認為當期模塊(僅在模塊模板中有效),例如新聞模塊,填寫news |
site | 站點id,默認當前站點,填寫其他站點id表示查詢其他站點的模塊數據 |
catid | 欄目id,支持多個欄目以小寫分號分開,例如1,2,3,4 |
field | 可用字段,多個字段以小寫分號分開,默認全部字段(為了提高緩存效率,建議填寫此選項) |
order | 排序方式,多個排序以小寫分號分開,默認降序排列,例如updatetime_asc表示按更新時間升序排列 |
num | 表示顯示數量,支持定點查詢,例如1,2表示從第1條記錄開始,共顯示2條數據 |
more | 當等于more=1時表示查詢欄目附加字段,附表字段不支持查詢(more=1參數必須與catid共存) |
flag | 推薦位id,只支持一個推薦位查詢哦 |
join | 關聯表查詢 |
on | 關聯條件,格式為on=關聯字段,被關聯字段 |
page | 當page=1時表示開啟分頁查詢,否則pagesize與urlrule是不會生效的 |
pagesize | 分頁顯示數據量(當存在catid時會自動取該欄目設置的數量,修改欄目-模塊設置-設置數量即可) |
urlrule | 分頁地址規則:[page]表示分頁標識符(當存在catid時會自動取該欄目設置的URL分頁規則) |
sbpage | 當存在catid參數時又想按照自定義方式來分頁需要設置參數sbpage=1,表示強制按自定義分頁 |
cache | 緩存時間單位秒,默認關閉緩存;當cache=3600時,表示緩存時間1小時,建議數據查詢的標簽都加上緩存參數 |
return | 默認返回變量為t,調用方式就是{$t.字段值}(多級list查詢必須設置return=其他字母,否則你懂得) |
四、返回變量
變量 | 參數 |
---|---|
{$error} | 當查詢不到數據時,會返回錯誤信息,調試模板時很有用哦(寫在list標簽以外) |
{$sql} | 顯示當前查詢的sql語句,調試模板時候很有用哦(寫在list標簽以外) |
{$total} | 用于分頁時查詢的總記錄數量(寫在list標簽以外) |
{$count} | 當前查詢的記錄,當存在分頁時,表示當前頁的記錄數(寫在list標簽以外) |
{$nums} | 用于分頁時返回總的頁數(寫在list標簽以外) |
{$pagesize} | 用于分頁時返回當前每頁查詢數量(寫在list標簽以外) |
{$pages} | 顯示分頁代碼(寫在list標簽以外) |
{$key} | 當前記錄指針位置,從0開始(寫在list標簽以內) |
當存在return=字母時,以上變量都要寫成這種格式{$變量_字母},例如{list ...reutrn=a}時,變量格式{$key_a} | |
{$is_first} | 判斷是否第一條,{if $is_first}第一條{/if} |
{$is_last} | 判斷是否最后一條,{if $is_last}最后一條{/if} |
五、顯示字段
{$t.字段名稱}或者{$t['字段名稱']}
其他字段請參看后臺“插件->數據結構”中單擊相應的表就知道了,字段有說明的
六、字段修飾符
修飾符 | 介紹 |
---|---|
LIKE_字段 | 模糊匹配查詢,例如LIKE_title=%名稱%表示like title '%標題%' |
IN_字段 | IN子句查詢,例如IN_id=1,2,3,4表示id in (1,2,3,4) |
NOTIN_字段 | NOTE IN子句查詢,例如NOTIN_id=1,2,3,4表示id not in (1,2,3,4) |
BEWTEEN_字段 | 兩者之間查詢,例如BEWTEEN_id=1,100表示id在1到100的數據 |
BW_字段 | 同上,簡寫 |
NOT_字段 | 邏輯非查詢,例如NOT_name=1,表示name不能等1的數據 |
字段=值 | 字段條件查詢,例如uid=1表示會員id=1的數據 |
七、部分實例
1、顯示文章指定欄目1的數據,num表示顯示10條,order表示按更新時間排序,默認cache緩存時間10小時
{list action=module module=news catid=1 field=title,url,updatetime order=updatetime num=10} 標題:{$t.title} 地址:{$t.url} 更新時間:{$t.updatetime} 自定義更新時間:{dr_date($t._updatetime, 'Y-m-d')} 欄目名稱:{dr_cat_value('news', $t.catid, 'name')} 欄目URL:{dr_cat_value('news', $t.catid, 'url')} {/list}
2、顯示文章指定欄目1,2,3,4,5數據,num表示顯示10條,order表示按人氣排序
{list action=module module=news catid=1,2,3,4 num=10 order=hits} ...... {/list}
3、顯示文章在站點2的數據
{list action=module module=news site=2} .... {/list}
4、顯示其他模塊photo的數據
{list action=module module=photo} .... {/list}
5、分頁顯示文章模塊的欄目為10的數據(當存在catid參數時只需加page參數就能分頁輸出)
{list action=module module=news catid=10 page=1} ..... {/list} {$pages}表示分頁輸出代碼
6、自定義分頁顯示文章模塊的數據(可以在任何頁面)
{list action=module module=news page=1 pagesize=10 urlrule=index.php?page=[page]} ..... {/list} {$pages}表示分頁輸出代碼 pagesize表示指定分頁顯示數據量 urlrule表示分頁地址規則,[page]參數必須有哦,否則分頁鏈接不正常
7、推薦位查詢,flag表示推薦位的id號,后臺可以看到,你懂得
{list action=module module=news flag=1 num=10} ..... {/list}
8、錯誤排查方式,必須掌握,很實用
{list action=module catid=1 num=10} ..... {/list} {$sql}:表示這段查詢的sql語句解析 {$error}:如果遇到查詢錯誤,它會返回相關信息 {$debug}:新版錯誤提示
9、顯示news模塊的帶縮略圖的10條文章并按時間先后順序排列
{list action=module module=news thumb=1 num=10 order=updatetime} 圖片:{dr_thumb($t.thumb, 寬, 高, 是否水印)}或者{dr_get_file($t.thumb)} ..... {/list}
10、隨機調用news模塊的10條內容
{list action=module module=news order=RAND cache=0 num=10} ..... {/list}
11、調用欄目1的內容和他附加字段的內容
{list action=module module=news catid=1 more=1} ..... {/list} 參數more=1表示調用附加字段,必須存在catid,否則不知道調用哪個欄目的附加字段
12、欄目的附加字段篩選
{list action=module module=news 字段=值 catid=1 more=1} ..... {/list} 方法和內容字段一樣 參數more=1表示調用附加字段,必須存在catid,否則不知道調用哪個欄目的附加字
13、查詢某個會員發布的news內容
{list action=module module=news uid=會員id號} .... {/list}
14、查詢當前內容的作者的全部發布news內容
{list action=module module=news uid=$uid} .... {/list}
文檔最后更新時間:2018-09-29 12:38:19