首頁  >  文章  >  CMS教程  >  DedeCMS的模板標籤語法

DedeCMS的模板標籤語法

(*-*)浩
(*-*)浩原創
2019-11-20 15:47:382518瀏覽

DedeCMS的模板標籤語法

織夢的範本標籤類似XML格式,所有的範本都含有定界符,預設是{dede:*}和{/dede:*} ,「*」代表範本標記名稱。

一般情況下{dede:*}和{/dede:*}是成對出現的,例如:                     (推薦學習:dedecms教程

範例1-1:

{dede:arclist flag='h' limit='0,1'}
<h2><a href="[field:arcurl/]">[field:title/]</a></h2>
<p>[field:description/]...<a href="[field:arcurl/]">[查看全文]</a></p>
{/dede:arclist}

上面的{dede:arclist}和{/dede:arclist}成對出現在範本檔案中,並且在兩個標籤當中包含了底層模板(innertext)。

底層範本(Innertext),底層範本其實就是有多筆記錄的範本輸出,使用者手動去指定單一記錄的樣式。

標籤還有一類出現形式是{dede:*/},通常以這種形式出現都是輸出變數、或不含底層模板的內容。

例如:1-2

{dede:global.cfg_webname/}
{dede:arclist flag=&#39;h&#39; limit=&#39;0,1&#39;/}

如果使用者沒有指定單一記錄的樣式,系統部分標籤都含有預設的底層模板,具體可以查看{cmapath}/ templets/system/資料夾下面的文件,這裡面都是系統的底層模板檔案。

註解

織夢標籤的範本註解非常靈活,可以透過標籤後面的commet屬性進行賦值。

範例1-3:

{dede:arclist flag=&#39;h&#39; limit=&#39;0,1&#39; commet=&#39;调用头条的第一篇内容&#39;}
<h2><a href="[field:arcurl commet="这是文章链接标签"/]">[field:titlecommet="这是文章标题标签"/]</a></h2>
<p>[field:description commet="这是摘要标签"/]...<a href="[field:arcurl  commet="这是文章链接标签"/]">[查看全文]</a></p>
{/dede:arclist}

在模板引擎將上述標籤解析為html的時候,commet的內容是被忽略掉不去解析的,使用者在閱讀模板標記的時候可以更好的理解標籤的意義。

函數

每個織夢的標籤都可以使用自訂函數對其進行擴展,自訂函數內容主要用於對目前標籤輸出內容進行處理。

範例1-4:

{dede:标记名称function=&#39;youfunction("参数一","参数二","@me")&#39;/}

其中@me 用來表示目前標記的值,其它參數由你的函數決定是否存在,例如:

{dede:field.pubdate function=&#39;strftime("%Y-%m-%d %H:%M:%S","@me")&#39;/}

屬性

模板標籤的屬性,決定了模板標記輸出的形式,例如arclist標籤主要功能是列出文件列表,但列出什麼內容、依照什麼方式進行排序等取決於模板標籤的屬性。

在織夢的模板標籤說明中含有各個模板的標籤屬性可以詳細查閱。

可以查看例1-1中的flag='h' limit='0,1',這裡flag和limit是標籤的相關屬性,透過手冊可以查閱屬性的介紹。

如果模板標籤如果沒有列出屬性,系統有預設屬性值,使用者可以參考模板標籤說明查看預設屬性。

程式設計

織夢模板很方便的一個地方就是支援簡單的模板程式設計。

格式為:

{dede:tagname runphp=&#39;yes&#39;}
$aaa = @me;
@me = "123456";
{/dede:tagname}

@me 表示這個標記本身的值,因此標記內程式設計是不能使用echo之類的語句的,只能把所有傳回值傳遞給@me。

此外由於程式碼佔用了底層模板InnerText的內容,因此需編程的標記只能使用預設的InnerText。

以上是DedeCMS的模板標籤語法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn