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