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

首頁 > CMS > 織夢DEDE > 正文

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

2024-07-09 22:51:44
字體:
來源:轉載
供稿:網友

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

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

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

  1. {dede:sql sql="SELECT COUNT(*) AS nums FROM dede_addonarticle"}
  2. [field:name = "nums"/]
  3. {/dede:sql}

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

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

  1. {dede:sql sql="SELECT * FROM dede_archives WHERE writer=~writer~"}
  2. [field:id/],
  3. {/dede:sql}

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

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

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

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

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

1.最簡單的輸出內容:

  1. {dede:php}
  2. $numA = 1;
  3. $numB = 2;
  4. echo $numA + $numB;
  5. {/dede:php}

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

2.結合SQL查詢輸出單條內容:

  1. {dede:php}
  2. $row = $dsql->GetOne('select id,typename from dede_arctype where id=2');
  3. print_r($row);
  4. {/dede:php}

這個輸出的內容是

  1. Array
  2. (
  3. [id] => 2
  4. [typename] => 問答
  5. )

3.獲取當前頁面的變量

比如我們這里進入系統后臺的[模板]-[全局標記測試],我們在代碼中填入下面的內容:

  1. {dede:php}
  2. print_r($refObj->Fields);
  3. {/dede:php}

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

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

  1. Array
  2. (
  3. [typeid] => 0
  4. [phpurl] => /plus
  5. [indexurl] => /
  6. [templeturl] => /templets
  7. [memberurl] => /member
  8. [specurl] => /special
  9. [indexname] => 主頁
  10. [templetdef] => /templets/default
  11. )

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

  1. Array
  2. (
  3. [id] => 3
  4. [reid] => 0
  5. [topid] => 0
  6. [sortrank] => 1
  7. [typename] => 產品
  8. [typedir] => {cmspath}/product
  9. … …
  10. [indexname] => 主頁
  11. [templetdef] => /templets/default
  12. [position] => 主頁 > 產品 >
  13. [title] => 產品
  14. )

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

例如:

  1. {dede:php}
  2. $thisid = $refObj->Fields['id'];
  3. $row = $dsql->GetOne('select id,typename from dede_arctype where id='.$thisid);
  4. print_r($row);
  5. {/dede:php}

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 都昌县| 平塘县| 云林县| 越西县| 江门市| 金乡县| 德昌县| 富宁县| 沅陵县| 阳朔县| 永康市| 洛扎县| 安吉县| 汉寿县| 镇宁| 即墨市| 林芝县| 克拉玛依市| 合作市| 建昌县| 郑州市| 梁平县| 嘉鱼县| 铜山县| 三门峡市| 常德市| 滦平县| 荔波县| 怀宁县| 海南省| 吴江市| 虎林市| 黔西县| 平泉县| 宜州市| 富裕县| 张家口市| 高雄县| 慈利县| 陈巴尔虎旗| 衡阳县|