DEDECMS萬能標(biāo)簽{dede:sql}使用教程詳解
時間: 2018-12-12 08:24
閱讀: 次
作者:素材無憂網(wǎng)
1.首頁在后臺單頁文檔管理里添加一個單頁文檔,內(nèi)容編輯框輸入你要的內(nèi)容生成。
2.在需要調(diào)用單頁文檔的地方加入SQL萬用標(biāo)簽
{ dede :sql sql=select body from dede_sgpage where aid=2}[field:body /]{/dede:sql}
相信熟悉SQL語言的朋友很容易看懂這句含義。意思其實(shí)就是選擇數(shù)據(jù)表dede_sgpage 的body字段輸入,aid=2這里的2表示你創(chuàng)建單頁文檔ID數(shù)字,你使用時做下相應(yīng)修改即可。
又如這句SQL標(biāo)簽樣例代碼
{dede:sql sql="select content from dede_arctype where id=2"}
[field:content function=cn_substr(Html2Text(@me),600)/]
{/dede:sql}
根據(jù)上面的例子,應(yīng)該很好理解了,這里主要說明一下cn_substr表示截取600個字符也就是300個漢字。Html2Text代表把含有HTML的字符過濾掉,只顯示文本。
其實(shí)除了上面的例子外,在Dede系統(tǒng)里面,我可以可以自由使用SQL語句來配和織夢標(biāo)簽進(jìn)行更多的個性化調(diào)用。他們的基本參照格式為:
{dede:sql sql="select 字段 From 表名稱 where 條件語句"}
[field:字段名/]
{/dede:sql}
由上面這種基本格式,我們就可以基本轉(zhuǎn)換出一條調(diào)用文檔列表的調(diào)用標(biāo)簽了,代碼為:
{dede:sql sql="select * From dede_archives limit 10"}
·[field:title/]
{/dede:sql}
大家看到了上面的文檔鏈接的底層模板地址的是動態(tài)的,那么我們要怎么樣來進(jìn)行轉(zhuǎn)換,讓他鏈接到靜態(tài)地址呢,這里我們只需要對[field:id/]進(jìn)行一下轉(zhuǎn)換,轉(zhuǎn)換后的完整代碼為:
{dede:sql sql="SELECT * FROM dede_archives limit 10"}
·[field:title function=cn_substr(@me,30,0)/]
{/dede:sql}
標(biāo)簽名稱:sql 功能說明:用于從模板中用一個SQL查詢獲得其返回內(nèi)容適用范圍,全局使用
基本語法:{dede:sql sql=""}底層模板{/dede:sql}
參數(shù)說明:sql="" 完整的SQL查詢語句
底層模板字段:SQL語句中查出的所有字段都可以用[field:字段名/]來調(diào)用
應(yīng)用實(shí)例:
1.調(diào)用某個特定會員發(fā)布的文章內(nèi)容:
{dede:sql sql='Select * from dede_archives where mid=1'}
[field:title/]
{/dede:sql}
mid為用戶ID ,可以參考二次開發(fā)中關(guān)于dede_archives的數(shù)據(jù)表字段介紹
首頁調(diào)用文章正文內(nèi)容,比較好的解決方法:
方法一:
{dede:sql sql="SELECT aid,typeid,body,body1,body2,body3,body4,body5 FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0,1"}
[field:body /] [field:body1 /] [field:body2 /] [field:body3 /] [field:body4 /] [field:body5 /]
{/dede:sql}
方法二:
{dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0,1"}
[field:body /]
{/dede:sql}
調(diào)用說明:
其中typeid=2,欄目ID號,表示調(diào)用此ID欄目內(nèi)的文章,換成 aid=1 則表示調(diào)用的 aid 為 1 的文章,
DESC 表示排序,按從大到小排,換成 ASC 則按從小到大排序,
LIMIT 0,1 表示調(diào)用數(shù)量,也可以寫成數(shù)量LIMIT 1,這個1代表調(diào)用的數(shù)量。
===============================================
SQL語句分為兩類,功能型的和內(nèi)容調(diào)用型,功能型的主要是對數(shù)據(jù)庫進(jìn)行常規(guī)的操作,例如{insert、update},數(shù)據(jù)調(diào)用型的操作就 (select),兩種類型的SQL語句使用發(fā)放也很簡單,如果是功能型的只需要在系統(tǒng)后臺[系統(tǒng)]-[SQL命令運(yùn)行工具]中進(jìn)行使用,如果是模板標(biāo)簽 的數(shù)據(jù)調(diào)用類型,只需要在模板相應(yīng)位置添加標(biāo)簽即可。
功能型SQL語句整理:
功能說明:添加自定義屬性
insert into `dede_arcatt`(sortid,att,attname) values(9,'d','評論');
alter table `dede_archives` modify `flag` set ('c','h','p','f','s','j','a','b','d') default NULL;
功能說明:批量為作者和來源賦值
UPDATE dede_archives SET writer='要賦的值' WHERE writer='';
UPDATE dede_archives SET source='要賦的值' WHERE source='';
標(biāo)簽: