POST TIME:2019-09-30 14:12
DedeCMS也提供頻道內(nèi)容模型自定義功能,可以根據(jù)自己的需求建立頻道模型,類似KingCMS的自定義模塊。這篇文章不寫(xiě)如何建立頻道內(nèi)容模型,寫(xiě)寫(xiě)在首頁(yè)或非自定義頻道內(nèi)容列表頁(yè)如果要調(diào)用里面的內(nèi)容使用的SQL標(biāo)簽。
要使用SQL標(biāo)簽,最基本的查看數(shù)據(jù)庫(kù)字段是一定要會(huì)的,特別是如果用自定義模型字段都是自己加的,不是系統(tǒng)默認(rèn)的。
先看下面這段調(diào)用的語(yǔ)句,我一行行解釋吧,這樣可能比較好理解。
{dede:sql sql=" SELECT dede_addonevents.aid,dede_addonevents.typeid,dede_addonevents.events_place,dede_addonevents.begin_date,dede_addonevents.end_date, dede_events.ID,dede_events.typeid,dede_events.title,dede_events.description, dede_full_search.aid,dede_full_search.typeid,dede_full_search.url FROM dede_addonevents , dede_events , dede_full_search WHERE dede_addonevents.aid=dede_events.ID AND dede_events.ID=dede_full_search.aid ORDER BY dede_addonevents.aid DESC LIMIT 0, 4 "}[field:events_place/][field:title function="cn_substr(@me,38)"/] [field:description function="cn_substr(@me,38)"/][field:begin_date/]-[field:end_date /]{/dede:sql}dede_addonevents 和 dede_events 是自定義生成頻道之后自動(dòng)生成的表,默認(rèn)的系統(tǒng)中是沒(méi)有的。dede_full_search 這個(gè)表是存儲(chǔ)DedeCMS中所有文章或自定義頻道文章內(nèi)容的路徑的表,這里要調(diào)用URL,一定是需要打開(kāi)的。
dede_addonevents.aid,dede_addonevents.typeid,dede_addonevents.events_place,dede_addonevents.begin_date,dede_addonevents.end_date,dede_events.ID,dede_events.typeid,dede_events.title,dede_events.description,
這幾個(gè)都是自定義表中需要調(diào)取的字段,在自定義頻道生成的時(shí)候DedeCMS系統(tǒng)會(huì)自動(dòng)加上.aid,.ID,.typeid,這樣的ID字段,以實(shí)現(xiàn)多表關(guān)聯(lián)查詢。
這部分FROM dede_addonevents , dede_events , dede_full_search就不詳細(xì)解釋了,就是調(diào)用的表名。
下面這個(gè)部分就是多表關(guān)聯(lián)查詢的條件語(yǔ)句了
WHERE dede_addonevents.aid=dede_events.ID AND dede_events.ID=dede_full_search.aid當(dāng)然是要ID能匹配上調(diào)用的內(nèi)容才不出錯(cuò)。
ORDER BY dede_addonevents.aid DESC LIMIT 0,4這句就是數(shù)據(jù)顯示的倒序正序了,Mysql支持LIMIT 0, 4 這個(gè)設(shè)置起始位置非常方便。
[field:events_place/][field:title function="cn_substr(@me,38)"/] [field:description function="cn_substr(@me,38)"/][field:begin_date/]-[field:end_date /]
這個(gè)部分就是DedeCMS的標(biāo)簽了,自定義的時(shí)候會(huì)有字段名,跟系統(tǒng)默認(rèn)標(biāo)簽基本相近,方法也一致。標(biāo)簽問(wèn)題查看系統(tǒng)的幫助就可以。
從這個(gè)語(yǔ)句可以看出,如果對(duì)DedeCMS的數(shù)據(jù)庫(kù)表和字段了解的夠清楚基本可以實(shí)現(xiàn)想調(diào)用什么數(shù)據(jù)就調(diào)用什么數(shù)據(jù)。以后有時(shí)間再看看可以不可以實(shí)現(xiàn)多個(gè)SQL查詢。