国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > CMS > 織夢DEDE > 正文

織夢dedecms萬能標簽{dede:php}{dede:sql}調用方法

2024-07-12 09:09:59
字體:
來源:轉載
供稿:網友

織夢dedecms里面有兩個標簽還是比較靈活的,也被稱為“萬能標簽”,一個是{dede:php}{/dede:php}另外一個是{dede:sql}標簽, {dede:php}標簽注釋要用來在模板中寫php代碼的,{dede:sql}主要是用來調用sql用的,下面就來介紹下這兩個標簽到底該如何使用。 該文章是轉自百度空間的一篇文章。

一、{dede:sql}標簽的用法

sql標簽可以稱得上是個萬能標簽了,查詢數據庫將其輸出,這里介紹一些關于這個標簽的用法:

1.用來輸出統計內容,這個是不錯的,舉個例子,我們來統計下總共發了多少的文章,思路就是輸出dede_addonarticle這個文章附加表內容總數就可以了。

{dede:sql sql="SELECT COUNT(*) AS nums FROM dede_addonarticle"}

[field:name = "nums"/]

{/dede:sql}

2.使用~field~來進行特殊的查詢,比如之前論壇上面很多會員需要做一個輸出當前發布文章會員的相關內容,之前用sql或者arclist標簽是沒辦法實現的,因為每篇內容是不同的,這里我們來用5.5的sql語句來做個示范。

我們首先在文章模板中相應的位置加上下面的標簽

{dede:sql sql="SELECT * FROM dede_archives WHERE writer=~writer~"}

[field:id/],

{/dede:sql}

這個放到article_article.htm頁面,將會檢索出當前會員發布的相關文章,這里的~ writer~會根據當前內容的環境變量進行替換后再執行查詢。

這里出現在SQL語句中條件查詢的~ writer~,也就是$refObj->Fields[$value]這個里面的相關內容

二、{dede:php}模板中使用PHP

許多人希望織夢的模板標簽能夠更加靈活,加入可以運行PHP的功能,這里在DedeCMS V5.5中就加入了一個可以執行php的特殊標簽{dede:php}{/dede:php},這個標簽可以執行PHP語句了。

我這里舉幾個常用的例子:

1.最簡單的輸出內容:

{dede:php}

$numA = 1;

$numB = 2;

echo $numA + $numB;

{/dede:php}

在{dede:php}里想要輸出信息 可以直接使用print , echo 之類的打印出來,賦值給@me 無效。這個輸出的內容是計算結果:3。2.結合SQL查詢輸出單條內容:

{dede:php}

$row = $dsql->GetOne('select id,typename from dede_arctype where id=2');

print_r($row);

{/dede:php}

這個輸出的內容是

Array

(

[id] => 2

[typename] =>  問答

)

3.獲取當前頁面的變量比如我們這里進入系統后臺的[模板]-[全局標記測試],我們在代碼中填入下面的內容:

{dede:php}

print_r($refObj->Fields);

{/dede:php}

在PHP中想要獲取dede某個字段值可以使用 $refObj->Fields 對象來獲取 列入獲取 title => $refObj->Fields['title']

如果環境變量保持默認,即"不使用環境ID",我們會看到以下的結果:

Array

(

[typeid] => 0

[phpurl] => /plus

[indexurl] => /

[templeturl] => /templets

[memberurl] => /member

[specurl] => /special

[indexname] =>  主頁

[templetdef] => /templets/default

)

那我們再換個環境變量測試看看,這里以我本地的欄目為測試了:

Array

(

[id] => 3

[reid] => 0

[topid] => 0

[sortrank] => 1

[typename] =>  產品

[typedir] => {cmspath}/product

… …

[indexname] =>  主頁

[templetdef] => /templets/default

[position] =>  主頁  >  產品  >

[title] =>  產品

)

這樣一來就檢索出當前頁面的局部變量了,接下來我們可以來結合前面的SQL語句來實現根據不同環境ID調用內容不同欄目內容。例如:

{dede:php}

$thisid = $refObj->Fields['id'];

$row = $dsql->GetOne('select id,typename from dede_arctype where id='.$thisid);

print_r($row);

{/dede:php}

這樣是來調用當前欄目的標題,這個標簽功能類似于{dede:field.typename/}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潼关县| 屯留县| 肇州县| 班玛县| 永昌县| 湟源县| 朔州市| 周口市| 衢州市| 独山县| 永修县| 万载县| 池州市| 元氏县| 蒙阴县| 始兴县| 石嘴山市| 高邮市| 平湖市| 泰来县| 南宫市| 漾濞| 栾川县| 浮梁县| 九龙县| 抚宁县| 绥中县| 子洲县| 广平县| 贡山| 昭平县| 邵阳市| 平果县| 三台县| 岳阳市| 温宿县| 郓城县| 重庆市| 泰来县| 来宾市| 永城市|