婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 網站建設 > 建站知識 > dedecms網頁模板怎么制作

dedecms網頁模板怎么制作

POST TIME:2017-11-13 00:00

網頁模板就是templets中的htm文件,所以編寫模板就是要編寫html。這篇文章不是關于標簽的具體使用,而是對網頁模板的一些理解。包括基本的標簽語法,封面模板,列表模板和文檔模板的關系。

一 關于標簽

dedecms標簽:就像html標簽,不過是織夢自定義的,由標簽名,屬性,和InnerText構成。

改寫文件templets/index.htm

網站名:{dede:global name=cfg_webname/}<br/><br/>
<strong>最近登陸的會員</strong><br/>
{dede:memberlist row=6 signlen=30}
<a href="[field:spaceurl/]" target="_blank">
<img src="[field:face/]" width="52" height="52"/> [field:uname/]<br/>
</a>
{/dede:memberlist}


通過運行網站主頁index.php查看結果。

像dede:global就是標簽名,name=cfg_webname是屬性,在dede:memberlist標簽間的就是InnerText。在織夢中,InnerText又稱為底層模板。

短標簽:像global這種只有單邊的標簽叫短標簽,表示一個元素的值。

塊標簽:像memberlist這種成對的標簽叫塊標簽,一般表示一系列的紀錄,像上面的代碼就表示列出6個會員的默寫信息。研究一下會發現這些記錄來自數據庫。

[field:XX]這個代表記錄中的某個屬性值。

總結一下,編寫模板時用到哪些語言

Html代碼+新增的dedecms標簽語法。

Css和Js沒有新語法,以外部文件的方式調用。

Php,mysql的代碼大大減少,與數據庫查詢有關的代碼一部分被標簽語法代替。比如說調用memberlist標簽,就等價于訪問數據表dede_member。Php主要用于插件等新模塊的編寫和修改。

不用全部標簽都學,學會global、field、php、arclist、list、pagelist和memberlist即可。其他需要再查。

要學習一個標簽,要學會
1標簽的基本語法,標簽名
2標簽,標簽對應的網頁模板,及標簽的邏輯意義
3標簽的屬性以及其對標簽用法的控制
4標簽背后的數據來源,及其提供的InnerText

二 模板的種類

2.1 templets文件夾

System文件夾,里面放的是默認底層模板。當我們在塊級標簽間不寫任何東西時,就會自動被調用來作為塊級標簽的InnerText。

Plus文件夾,里面放的是被root_dir/plus里的php調用的模板。經過一些研究也許能仿寫這些模板的代碼,待探究。

Default文件夾,里面放的是默認模板,是網頁顯示主要的模板,如果在網上下一個其他的dedecms模板(非官方默認模板),可能里面只是一個templets文件夾,因為這對外觀已經足夠了。下面是default文件夾的分析。

我以前只用到index.htm,其他的文件有什么用呢?

我認為這些文件可以分成兩類:

第一類不是一個完整的頁面,被include的(由于有了dedecms標簽,html文檔中也可以include)。如head.htm,footer.htm等。

第二類就是完整的頁面了,呵呵。

而第二類又分為封面(index)模板,列表(list)模板,文檔(內容,article)模板。文件夾中的index_XX.htm就是封面模板,依此類推。

2.2封面、列表和文檔模板的測試

在root_dir/index.php中的SetTemplet處把路徑改為dirname(__FILE__) . "/templets/default/

list_article.htm",顯示的內容不太完整。這些模板要怎么用呢?一下是我探索的辦法:

打開dedecms的網站后臺管理(對了,請先安裝安裝數據體驗包,這樣才有測試數據)

點擊網站欄目管理

在網頁基礎中點更改

常規選項中欄目屬性是頻道封面

再選擇高級選項

高級選項中封面模板為{style}/index_article.htm

如果你安裝的數據和我是同一版本,就會知道網頁基礎是個一級欄目,底下組織了很多文章。

回到網站欄目管理

點擊預覽,會看到一個關于網頁基礎欄目的頁面。由于常規選項中欄目屬性是頻道封面,高級選項中封面模板為{style}/index_article.htm,所以網頁調用index_article.htm作為模板。

依此類推,如果在常規選項中欄目屬性是最終列表欄目,高級選項中封面模板為{style}/list_article.htm,則會調用list_article.htm作為模板,文檔模板也依此類推。

模板和欄目的關系

每一個欄目都有自己的三個模板,而同一個模板可被多個欄目所用。也就是說,模板只是提供了樣式,但內容終究來至數據庫。這也說明了為什么在root_dir/index.php中的SetTemplet處改路徑不能顯示完整的內容,因為模板沒有綁定到某個具體欄目。這也是織夢作為內容管理系統的特點,把樣式和內容分離。

再來說說文檔模板,在常規選項->欄目屬性處看到。作為頻道封面欄目不能發布文章的。那我們選一個最終列表欄目,如”Html”

點擊更改??吹匠R庍x項中欄目屬性是最終列表欄目,點高級選項,就能看到文檔模板為{style}/article_article.htm,所以Html欄目下所有的文章都會以這個模板顯示。

點擊內容管理里的普通文章

選擇一篇Html欄目下的文章,點預覽(右邊的那個綠色小球)

這時看到的是就是article_article.htm模板代表的樣式。

到這里,應該就會如何顯示/調試封面模板、列表模板和文檔模板了。

2.3頻道

可以看見templets/default中大部分的模板都是這三類,可見其重要性。那么有index_article.htm,list_article.htm,article_article.htm就夠了,其他又是干什么的。

這就要講到頻道,頻道是欄目的類型,文章(article)頻道、圖片(image)頻道、軟件(soft)頻道(實質是一個下載頻道)、商品(shop)頻道等。頻道是一種內容模型,比如動漫、風景都能用圖片頻道。所以就會有index_article.htm,index_ image.htm,index_ soft.htm,index_shop.htm。每個頻道都有自己的三種模板。

那么如何編寫模板,當然要先學過標簽語法

A、function 擴展,如{dede:標記名稱 function=”函數名(@me,其它參數)” /}

B、在Innertext中直接編程,也就是之前一直用的方法

再讀一下index_article.htm,list_article.htm,article_article.htm。讀源碼是最好的學習方法^_^

總的來說,寫網頁具體要做的就是為每個頻道編寫網頁模板。

關于模板的內容就分享到這里了。




上一篇:dedecms中自定義數據模型

下一篇:織夢cms使用及總結

收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266
主站蜘蛛池模板: 金沙县| 雷州市| 郧西县| 长兴县| 靖江市| 公安县| 灵宝市| 汤阴县| 鄢陵县| 南昌县| 克拉玛依市| 广宁县| 石屏县| 依安县| 奉化市| 林甸县| 芜湖市| 蒲江县| 锦州市| 龙山县| 宜州市| 临潭县| 易门县| 天柱县| 云林县| 合阳县| 孟村| 吴川市| 陵川县| 合作市| 闽清县| 台中市| 山东省| 尖扎县| 溧水县| 开阳县| 温泉县| 广德县| 枣庄市| 防城港市| 漳州市|