洞悉互聯網前沿資訊,探尋網站營銷規律
作者:狐靈科技 | 2019-12-29 17:05 |點擊:
織夢DedeCms給我們提供了大量調用標簽,供我們調用各種數據,但提供再多的標簽,也有滿足不了我們的時候,這時我們可以用SQL語句,靈活調用我們需要的內容。
如何任意調用數據庫中的內容呢?
先舉個例子:
相信熟悉SQL語言的朋友很容易看懂這句含義。意思其實就是查詢數據表dede_addonarticle中的body字段內容,條件是aid=2,[field:body /]表示輸出body字段的內容。
又如這句SQL標簽樣例代碼:
根據上面的例子,應該很好理解了,這樣語句輸出的結果就是dede_arctype表中id=2的content字段的前200個中文。
這里主要說明一下cn_substr表示返回字符串的一部分,600表示截取600個字節(utf-8編碼中一個中文占用3個字節,gbk編碼中一個中文占用2個字節)。Html2Text參數代表把含有HTML的字符過濾掉,只顯示文本。
其實除了上面的例子外,在Dede系統里面,我可以可以自由使用SQL語句來配合織夢標簽進行更多的個性化調用。他們的基本參照格式為:
由上面這種基本格式,我們就可以基本轉換出一條調用文檔列表的調用標簽了,比如我們先取出10條dede_archives數據表中的內容,示例代碼:
如果我們想要從第3條開始調取,取出5條記錄又該怎么寫呢?mysql的語法中limit可以用來限制查詢結果的條數,示例:
解析:因為索引是從0開始計數的,所以第3條記錄對應的索引就是2,limit 2,5可以理解為忽略2條,也就是從第3條開始,共取出5條記錄。
上面代碼中的文檔鏈接地址的是動態的,如果我們需要靜態地址,那么只需要進行一下轉換,這里我們只需要對[field:id/]進行一下轉換即可,轉換后的完整代碼為: