DedeCMS v5.7的loop萬(wàn)能標(biāo)簽非常有用,可以使用它來(lái)調(diào)用任意表中的數(shù)據(jù),我們先來(lái)看看loop標(biāo)簽的語(yǔ)法結(jié)構(gòu)。
{dede:loop table='table_name' if='condition' sort='field_name' row='line_number'}
<a href='[field:arcurl/]'>[field:title/]</a><br />
{/dede:loop}
上面就是loop標(biāo)簽的語(yǔ)法了,其中table_name指的是表名,也就是要查詢的數(shù)據(jù)所在的表;condition是條件,相當(dāng)于SQL語(yǔ)句中的where;field_name指的是排序方式,相當(dāng)于SQL語(yǔ)句中的order by;line_number是行數(shù),指要查詢多少條數(shù)據(jù),我們通過(guò)兩個(gè)例子來(lái)說(shuō)明loop標(biāo)簽的強(qiáng)大功能。
{dede:loop table='dede_archives' sort='mid' row='4' if='mid=1'}
<a href='[field:arcurl/]'>[field:title/]</a>([field:mid/])<br />
{/dede:loop}
上面的例子是調(diào)用DedeCMS文檔主表的文章,根據(jù)mid也即會(huì)員ID號(hào)排序,條件是會(huì)員ID等于1。換句話說(shuō),這段代碼的作用是查詢會(huì)員ID為1的用戶發(fā)布的4篇文檔。
站長(zhǎng)們也許會(huì)問(wèn)為什么loop標(biāo)簽叫萬(wàn)能調(diào)用標(biāo)簽?zāi)??其?shí)它除了調(diào)用DedeCMS數(shù)據(jù)表里面的內(nèi)容外,還可以調(diào)用其他程序數(shù)據(jù)表中的數(shù)據(jù),從而起到整合數(shù)據(jù)的作用。
{dede:loop table='cdb_threads' if='' sort='tid' row='8'}
<a href="http://down.chinaz.com/bbs/thread-[field:tid/]-1-1.html">
[field:subject function="cn_substr('@me',40)"/]
</a><br />
{/dede:loop}
上述代碼的功能和第一個(gè)例子類似,它用來(lái)獲取Discuz! 論壇的最新主題帖子,URL標(biāo)簽中的域名要替換成自己的域名,各位站長(zhǎng)可以試驗(yàn)下。總之,loop標(biāo)簽同時(shí)可以查詢跟DedeCMS處在同一個(gè)數(shù)據(jù)庫(kù)的數(shù)據(jù)表,如果您的論壇或者商城程序安裝在同一數(shù)據(jù)庫(kù),也可以使用loop標(biāo)簽進(jìn)行調(diào)用。