action | 支持"推薦位(position)"、"搜索關(guān)鍵字(keywords)"、"相關(guān)文章(relation)"模式,普通數(shù)據(jù)查詢(xún)不需要此參數(shù) |
table | 循環(huán)表名稱(chēng),默認(rèn)為內(nèi)容表,可以用其他表,插件表格式為:插件名稱(chēng).表名稱(chēng)(link.linkname) |
catid | 當(dāng)前欄目ID號(hào) |
num | 顯示數(shù)量,還可以寫(xiě)成"num=1,5"相當(dāng)于limit 1,5 |
return | 返回?cái)?shù)組名稱(chēng),用于循環(huán),默認(rèn)值為't',調(diào)用方式:{$t['title']} |
more | 值為1時(shí),自動(dòng)調(diào)用內(nèi)容表的附表內(nèi)容(也就是自定義的字段) |
order | 排序,例如: order=id_desc,userid_desc,默認(rèn)desc排序,可以省掉_desc |
join | 聯(lián)合查詢(xún)表名稱(chēng)(用該表的主鍵關(guān)聯(lián)),例如:join=member |
on | 其他表的字段(非join表的自段),必須與join成對(duì)出現(xiàn),否則join失效,例如:join=member on=userid |
page | 用于分頁(yè)查詢(xún),如果出現(xiàn)了num參數(shù),分頁(yè)查詢(xún)將會(huì)失效 |
urlrule | 分頁(yè)URL格式(分頁(yè)標(biāo)識(shí)符_page_或者[page]),例如:urlrule=$catid-[page].html |
pagesize | 分頁(yè)查詢(xún)每頁(yè)顯示的記錄數(shù)量(如果出現(xiàn)catid,系統(tǒng)默認(rèn)會(huì)使用該欄目的分頁(yè)數(shù)量) |
cache | 數(shù)據(jù)緩存,單位秒,在這緩存時(shí)間內(nèi)調(diào)用緩存文件而不再去訪(fǎng)問(wèn)數(shù)據(jù)庫(kù) |
thumb | 值等于1的時(shí)候,顯示有縮略圖的文檔;等于0的時(shí)候,顯示無(wú)縮略圖的文檔(v1.7) |
form | 調(diào)用表單,例如:form=liuyan ,就是調(diào)用liuyan的表單數(shù)據(jù)(v1.7.5) |
site | 站點(diǎn)id,用于多站點(diǎn)調(diào)用,例如: site=2 table=content ,就是調(diào)用站點(diǎn)2的內(nèi)容表(v1.7.5) |
fields | 為sql語(yǔ)句指定字段,例如: fields=title,url ,與sql語(yǔ)法一致(不能使用`),支持自定義字段名稱(chēng)(v1.7.5) |
extend | 對(duì)特殊sql語(yǔ)句進(jìn)行延展,具體教程傳送口 |
格式: {list 參數(shù)1=值1 參數(shù)2=值2 ... 參數(shù)N=值N} ... 循環(huán)體 ... {/list}
注意:參數(shù)和值不能出現(xiàn)引號(hào)
一、參數(shù)介紹
1、action
模式選擇參數(shù),支持"推薦位(position)"、"搜索關(guān)鍵字(keywords)"、"相關(guān)文章(relation)"、"自定義字段信息(field)"模式
例如:推薦位查詢(xún)
{list action=position id=1} ... {/list}
返回推薦位id=1的數(shù)據(jù)并循環(huán)
2、return
數(shù)據(jù)返回變量,默認(rèn)為t,循環(huán)內(nèi)直接使用{$t[字段]}
{list ... return=item} {$item['title']} {/list}
返回變量就成了$item,而不再是$t,多層list標(biāo)簽可以用它來(lái)解決變量沖突
3、more
當(dāng)其值為1時(shí),表示聯(lián)合附表查詢(xún),必須與catid或者modelid參數(shù)聯(lián)合使用
{list catid=$catid more=1 cache=36000} ... {$t[附表字段]} ... {/list}
可快速查詢(xún)出該欄目的自定義字段數(shù)據(jù),可配合fields參數(shù)減少緩存大小
4、join和on
聯(lián)合查詢(xún)表名稱(chēng),必須與on成對(duì)出現(xiàn)
{list table=content join=member on=userid} ... {/list}
表content與member關(guān)聯(lián)查詢(xún),on是表content中的關(guān)聯(lián)字段,就是以member表的主鍵與content表的userid字段先關(guān)聯(lián)查詢(xún)
5、page、pagesize(顯示數(shù)量)和urlrule(分頁(yè)規(guī)則)
分頁(yè)查詢(xún),如果存在caitd,則使用該欄目的分頁(yè)規(guī)則和顯示數(shù)量,返回分頁(yè)結(jié)果變量{$pagelist}
{list catid=$catid page=$page} ... {/list}
欄目分頁(yè)時(shí),會(huì)調(diào)用該欄目的分頁(yè)規(guī)則配置,無(wú)需后面兩個(gè)參數(shù)
6、num
Limit控制,最大顯示數(shù)量
{list catid=$catid num=5} ... {/list}
最大顯示5條記錄(可以寫(xiě)成num=1,5,表示從1開(kāi)始到5行結(jié)束)
7、order
{list catid=$catid order=updatetime,id} ... {/list}
示例按updatetime降序,id降序,如果升序就附加:字段_ASC(默認(rèn)是降序)
8、字段作為參數(shù)(同一字段只能出現(xiàn)一次)
{list catid=1 username=admin num=10} ...{/list}
其中的username是內(nèi)容表中的字段,解析為:catid=1 and username='admin'
{list NOTcatid=1 num=10} ...{/list}
解析為:catid not in (欄目集合)
9、cache
緩存參數(shù),推薦list查詢(xún)都加上它
{list catid=1 cache=3600} ...{/list}
緩存3600秒(1小時(shí)),在3600秒內(nèi)調(diào)用緩存數(shù)據(jù)而不訪(fǎng)問(wèn)數(shù)據(jù)庫(kù),減輕服務(wù)器壓力
10、thumb
是否顯示縮略圖
{list thumb=1 cache=3600} ...{/list}
當(dāng)thumb=1時(shí),表示顯示有縮略圖的文檔,相當(dāng)于SQL中的thumb<>'';當(dāng)thumb=0時(shí),相當(dāng)于SQL中的thumb=''
11、form
表單數(shù)據(jù)查詢(xún)快捷參數(shù)
{list form=liuyan cache=3600} ...{/list}
調(diào)用表單,例如表單為liuyan ,示例就是調(diào)用liuyan的表單數(shù)據(jù),當(dāng)然相對(duì)應(yīng)本站點(diǎn)
12、site
用于查詢(xún)指定站點(diǎn)數(shù)據(jù)
{list site=2 table=content num=10 cache=3600} ...{/list}
站點(diǎn)id,用于多站點(diǎn)調(diào)用,示例就是調(diào)用站點(diǎn)2的內(nèi)容表數(shù)據(jù)
12、fields
為sql語(yǔ)句指定字段,與sql語(yǔ)法一致(各個(gè)字段不能使用`字段名`,程序會(huì)自動(dòng)為你加上),支持自定義字段名稱(chēng)
{list fields=title,url,content catid=1 more=1 num=10 cache=3600} ...{/list}
示例中解析為SQL是:select `主表`.`title`,`主表`.`url`,`附表`.`content` from ....
二、相關(guān)示例
1、欄目查詢(xún)
{list catid=$catid order=updatetime num=10} ... {/list}
查詢(xún)當(dāng)前欄目的10條數(shù)據(jù),并按updatetime desc排序
2、欄目分頁(yè)查詢(xún)
{list catid=$catid order=updatetime page=$page} ... {/list}
查詢(xún)當(dāng)前欄目,按照當(dāng)前欄目默認(rèn)分頁(yè)方式分頁(yè)
3、自定義分頁(yè)查詢(xún)
{list catid=$catid order=updatetime page=$page pagesize=10 urlrule=$catid-[page].html} ... {/list}
分頁(yè)查詢(xún),每頁(yè)顯示10條,url地址格式為:欄目id-分頁(yè)id.html
4、聯(lián)合附表的自定義字段查詢(xún)
{list catid=$catid more=1 num=10} ... {/list}
5、Join關(guān)聯(lián)查詢(xún)
{list catid=$catid join=member on=userid} ... {/list}
解析為:from 內(nèi)容表 left join member on 內(nèi)容表.userid=member.主鍵
6、自定義表查詢(xún)
{list table=member groupid=1} ... {/list}
查詢(xún)member表中g(shù)roupid=1的用戶(hù)
7、插件表查詢(xún)
{list table=review.revirew_total contentid=10} ... {/list}
查詢(xún)r(jià)eview插件中的表review_total中contentid=10的數(shù)據(jù)
三、Action參數(shù)
1、推薦位(position)
{list action=position id=1 catid=$catid} ... {/list}
id:推薦位的id
catid:可選,根據(jù)推薦位的類(lèi)別而決定
輸出字段請(qǐng)參考position_data表結(jié)構(gòu),不用解釋太多大家都懂
2、搜索關(guān)鍵字(keywords)
{list action=keywords order=addtime} ... {/list}
order:排序字段參考search表
輸出字段請(qǐng)參考search表結(jié)構(gòu),不用解釋太多大家都懂
3、相關(guān)文章(relation)
①、調(diào)用手動(dòng)添加的相關(guān)文章
{list action=relation id=$id num=10} ... {/list}
id:文章的id
num:顯示數(shù)量,默認(rèn)10條
②、通過(guò)關(guān)鍵字自動(dòng)調(diào)用相關(guān)文章
{list action=relation tag=$keywords id=$id num=5}...{/list}
id:當(dāng)前文章id
tag:當(dāng)前文章的關(guān)鍵字
catid:欄目id(可選)
modelid:模型id(可選)
4、自定義字段顯示(field)(適合自定義字段表單顯示)
{list action=field modelid=$modelid name=字段名稱(chēng) value=字段默認(rèn)值} ... {/list}
modelid:欄模型id(必選)
name:字段名稱(chēng)(必選)
value:字段值(可選)
返回?cái)?shù)據(jù){$t['form']}:用于表單顯示(就是一個(gè)表單輸入框)
返回?cái)?shù)據(jù){$t['data']}:返回復(fù)選框、單選按鈕中的選項(xiàng)名稱(chēng)和值(數(shù)組類(lèi)型,若要輸出請(qǐng)用loop配合)
例:
①、調(diào)用模型2中的自定義字段zhiduan(默認(rèn)值200)的輸入表單
{list action=field modelid=2 name=zhiduan value=200} {$t['form']} {/list}
②、調(diào)用模型2中的自定義字段zhiduan(必須是復(fù)選框、單選按鈕類(lèi)型)的值
{list action=field modelid=2 name=zhiduan}
{loop $t['data'] $n=>$v}
名稱(chēng):{$n},值:{$v};
{/loop}
{/list}
因?yàn)?t['data']是數(shù)組類(lèi)型,說(shuō)以要用loop循環(huán)輸出,不用解釋太多大家都懂
四、特殊字段輔助參數(shù)
1、NOTcatid=值
注:NOT只能與欄目catid搭配
表示catid not in (欄目集合),不用解釋太多大家都懂
2、OR字段名稱(chēng)=值
{list catid=$catid ORuserid=1 ... }
表示where ... catid=$catid or userid=1
3、IN字段名稱(chēng)=值
{list catid=$catid INstatus=0,1,2 ... }
表示where ... catid=$catid and status in (0,1,2)
4、BW字段名稱(chēng)=值
{list catid=$catid BWstatus=1,2 ... }
表示where ... catid=$catid and status between 1 and 2
5、LIKE字段名稱(chēng)=值
{list LIKEtitle=%finecms% ...}
表示where ... title LIKE '%finecms%',不用解釋太多大家都懂
五、返回?cái)?shù)據(jù)
1、循環(huán)變量return=?,默認(rèn)為$t
2、分頁(yè)變量{$pagelist}
3、SQL查詢(xún)字符串{$sql}(用于測(cè)試,打印當(dāng)前查詢(xún)的sql語(yǔ)句)
4、統(tǒng)計(jì)變量{$total},返回?cái)?shù)據(jù)總數(shù)量
5、循環(huán)計(jì)數(shù){$key},用于list循環(huán)計(jì)數(shù)變量,從0開(kāi)始
6、循環(huán)統(tǒng)計(jì)變量{$count},統(tǒng)計(jì)本次循環(huán)記錄數(shù)量
7、支持多層lsit,防止變量沖突,必須設(shè)置不同的return值(v1.7.1及以上版本)
如果存在return值,那么所有變量必須加上后綴"_return值",例如:
{list ... return=s}
循環(huán)計(jì)數(shù)變量:{$key_s}
{/list}
分頁(yè):{$pagelist_s}
總數(shù):{$total_s}
我們珍惜您每一次在線(xiàn)咨詢(xún),有問(wèn)必答;用專(zhuān)業(yè)的技術(shù),貼心的服務(wù),解答您的開(kāi)發(fā)疑問(wèn)。
讓您真正感受到我們的服務(wù)態(tài)度和專(zhuān)業(yè)技術(shù)!