成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 網(wǎng)站建設(shè) > 建站知識(shí) > 織夢(mèng)添加文章生成靜態(tài)網(wǎng)頁(yè)概述

織夢(mèng)添加文章生成靜態(tài)網(wǎng)頁(yè)概述

POST TIME:2020-04-11 21:40

當(dāng)我們?cè)诤笈_(tái)添加文章或其它文檔時(shí),點(diǎn)擊“保存”后,根據(jù)前臺(tái)模板(在templets/default里面的模板)生成了靜態(tài)網(wǎng)頁(yè)。今天就簡(jiǎn)述一下織夢(mèng)系統(tǒng),實(shí)現(xiàn)這一過(guò)程一的大體步驟,因?yàn)椋瑺可娴奈募?,先概述一下,以后,?huì)對(duì)每個(gè)功能進(jìn)行分析學(xué)習(xí)。

本教程以文章模型為例子,以下是文章型的相關(guān)信息:

模型id 是 1;

模型對(duì)應(yīng)的模板:封面模板index_arcticle.htm,列表頁(yè)模板list_arcticle.htm,內(nèi)容頁(yè)模板arcticle_arcticle.htm

使用的模板引擎是:dedetag.class.php

后臺(tái)添加文章的模板文件是:article_add.htm,對(duì)應(yīng)的處理文件是article_add.php。

分析開(kāi)始。

當(dāng)在后臺(tái)添加數(shù)據(jù),點(diǎn)擊“保存”后,程序會(huì)把我們填寫(xiě)的,例如標(biāo)題,標(biāo)簽,作者,來(lái)源,文章內(nèi)容等數(shù)據(jù)一同傳給article_add.php文件,這個(gè)文件除了接收這些數(shù)據(jù),還接收到了這篇即將要生成的靜態(tài)網(wǎng)頁(yè)的欄目id和模型id。其它的數(shù)據(jù)我們就不多說(shuō),這二個(gè)id,最重要的,這二項(xiàng)是從哪里來(lái)的,實(shí)際是當(dāng)我們打開(kāi)后臺(tái)對(duì)應(yīng)的欄目,這二個(gè)id就已經(jīng)從對(duì)應(yīng)的數(shù)據(jù)庫(kù)表中查詢(xún)出來(lái)了。

然后,通過(guò)這二個(gè)id,生成這篇文章的id,即織夢(mèng)的叫法是文檔id。

生成文檔id函數(shù):$arcID = GetIndexKey($arcrank,$typeid,$sortrank,$channelid,$senddate,$adminid);從這個(gè)函數(shù)的參數(shù)我們就看出,包括了上面提到的欄目id和頻道模型id。生成的這個(gè)文檔id,非常重要,因?yàn)橄旅嬗糜谏蒱tml網(wǎng)頁(yè)的函數(shù),就以這個(gè)文檔id為參數(shù)。
這個(gè)函數(shù)在文件include/helpers/archive.helper.php里面大約150行。

生成html函數(shù):$artUrl = MakeArt($arcID,true,true,$isremote);請(qǐng)看里面的參數(shù)$arcID正是上面生成的文檔id,這一點(diǎn)要清楚。
這個(gè)函數(shù)在文件dede/inc/inc_archives_functions.php里面大約394行。

函數(shù)MakeArt()是我們今天分析的對(duì)象,找到這個(gè)文件,我們發(fā)現(xiàn)它引入了文檔類(lèi)arc.archives.class.php,然后,實(shí)例化一個(gè)對(duì)象,并把$aid作為參數(shù),注意,這個(gè)參數(shù)就是上面提到的生成的$arcID,代碼如下:$arc = newArchives($aid);雖然,就這么一句話,但是對(duì)象$arc確做了很多事,這全是因?yàn)闃?gòu)造函數(shù)的原因,當(dāng)實(shí)例時(shí),啟動(dòng)了這個(gè)構(gòu)造函數(shù)。

打開(kāi)文件arc.archives.class.php文件,我們看到構(gòu)造函數(shù)首頁(yè)根據(jù)傳過(guò)來(lái)的id,從數(shù)據(jù)庫(kù)微表中查詢(xún)出模型id和欄目id,這個(gè)欄目id和模型id跟上面提到的欄目id和模型id是一樣的,為什么呢?因?yàn)?,這個(gè)文檔id正是根據(jù)這個(gè)二個(gè)id生成的,只不過(guò)存儲(chǔ)在了這個(gè)微表#@_arctiny里面吧了。

接下來(lái),在這個(gè)構(gòu)造函數(shù)里面又實(shí)例化了一個(gè)對(duì)象$this->ChannelUnit,代碼是$this->ChannelUnit = new ChannelUnit($arr['channel'], $aid);在實(shí)例化時(shí),這二個(gè)參數(shù)一個(gè)是是剛才從微表查詢(xún)出來(lái)的模型id,一個(gè)是文檔id,我們?cè)俅蜷_(kāi)頻道模型單元類(lèi)文件channelunit.class.php,里面又一個(gè)構(gòu)造函數(shù),我們?cè)僭谶@個(gè)函數(shù)里分析,請(qǐng)注意,現(xiàn)在我們已經(jīng)到了channelunit.class.php這里面了。

這里面的構(gòu)造函數(shù)通過(guò)模型id,查詢(xún)數(shù)據(jù)庫(kù)表#@_channeltype里面的所有字段,然后,又實(shí)例化了一個(gè)對(duì)象,代碼是$dtp = new DedeTagParse();我們?cè)俅蜷_(kāi)這個(gè)類(lèi)對(duì)應(yīng)的靜態(tài)模板引擎文件dedetag.class.php文件。這里面又一個(gè)構(gòu)造函數(shù),幸運(yùn)的是這個(gè)構(gòu)造函數(shù)里面沒(méi)有再引入其它類(lèi)文件了。

返回channelunit.class.php里面接著看代碼,實(shí)例化對(duì)象$dtp后,設(shè)置了名子空間,把剛才從數(shù)據(jù)庫(kù)表#@_channeltype查出來(lái)的字段fieldset值,作為參數(shù),載入模板中,然后,對(duì)這個(gè)標(biāo)簽進(jìn)行分析,請(qǐng)注意fieldset的值,正是我們后臺(tái)在添加字段,在字段配置里面看到的值,類(lèi)似的如下圖所示。

通過(guò)這個(gè)構(gòu)造函數(shù),程序就把附加表字段的值,裝進(jìn)二維數(shù)組$this->ChannelFields里面了,以備后面使用。到此,這個(gè)構(gòu)造函數(shù)結(jié)束。

再加到上一層調(diào)用實(shí)例化,即回到文件arc.archives.class.php里面,接著下面的代碼,又把類(lèi)TypeLink進(jìn)行實(shí)例化,這個(gè)類(lèi)文件在文件include/typelink.class.php里面,當(dāng)實(shí)例化$this->TypeLink = new TypeLink($arr['typeid']);時(shí),參數(shù)是通過(guò)生成的文檔id查詢(xún)出來(lái)的欄目id。這個(gè)構(gòu)造函數(shù)是通過(guò)這個(gè)欄目id,把我們網(wǎng)站后臺(tái)對(duì)應(yīng)的模板提取出來(lái),放入$this->TypeInfos數(shù)組里面,此構(gòu)造函數(shù)到此結(jié)果,從上面可以看見(jiàn),構(gòu)造函數(shù)在初始化時(shí)很有用處。

再回到arc.archives.php里面,接著看下面的代碼,判斷當(dāng)前模型是不是單表模型,若不是則通過(guò)一個(gè)聯(lián)合查詢(xún),把字段信息查詢(xún)出來(lái)放到$this->Fields,若是單表模型則全部置初始化,代碼如下:

再向下的代碼,就是對(duì)特殊的字段數(shù)據(jù)處理了。這個(gè)構(gòu)造函數(shù)到此結(jié)束,再加到上一個(gè)實(shí)例化處,即文件inc_archives_function.php里。

然后,調(diào)用函數(shù)MakeHtml($isremote),我們?cè)倩氐轿募rc.archives.class.php里面,找到這個(gè)函數(shù),大約在351行,上面的初始化,全為這個(gè)生成靜態(tài)函數(shù)服務(wù)的。

在這個(gè)函數(shù)中先載入模板,這里的模板是后臺(tái)欄目對(duì)應(yīng)的模板,然后,通過(guò)函數(shù)ParAddTable()解析附加表的內(nèi)容,在這個(gè)函數(shù)里面,有一個(gè)字段值處理函數(shù)MakeField($k, $row[$k], $ctag),這個(gè)是處理include/taglib/channel/里

面的標(biāo)簽源碼的,例如圖片集里面的imgurls字段值,軟件模型里面的softlinks,這個(gè)函數(shù)是專(zhuān)門(mén)處理字段值有多個(gè)標(biāo)簽的這些,還有其它的特殊的字段值的,也是加載channel文件夾里面的標(biāo)簽的一個(gè)函數(shù)。

要注意的是:軟件模型時(shí)面的有一個(gè)特殊的類(lèi)型是softlinks,這是織夢(mèng)系統(tǒng)固有的,用戶(hù)加不上的。大家可以看一下軟件模型添加字段配置里面的這個(gè)介紹。

處理標(biāo)簽源碼include/taglib里面的標(biāo)簽用的函數(shù)是:MakeOneTag($this->dtp, $this, 'N'),通過(guò)這個(gè)函數(shù),就可以把標(biāo)簽源碼全部加載進(jìn)來(lái),對(duì)模板進(jìn)行解析。

接下來(lái)就是通過(guò)ParseTempletsFirst()對(duì)模板進(jìn)行解析,生成靜態(tài)網(wǎng)頁(yè),因?yàn)槭?,概述,所以,下面的代碼,不用多分析,請(qǐng)自己研究一下。

織夢(mèng)生成html的過(guò)程大同小異,其它模板用到的函數(shù)等全跟這個(gè)一樣,只不過(guò)里面的一些具體內(nèi)容,處理稍微不大一樣,但用到的功能其它一樣,只要精通一個(gè),其它,自然就會(huì)了,這個(gè)教程是比較淺的作了一個(gè)分析,如果要分析每個(gè)代碼,那得用好長(zhǎng)時(shí)間,后面的教程,將對(duì)這每個(gè)功能,進(jìn)行具體分析。


收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢(xún)

  • 400-1100-266
国产精品黄色在线观看| 超碰在线观看91| 337p粉嫩色噜噜噜大肥臀| 欧美午夜片欧美片在线观看| 欧美日韩一区二区视频在线| 91网址在线观看精品| 日韩区在线观看| 福利av痴女| 黄页免费在线| 日本久久久久久久久久| 日本成a人片在线观看| 中文字幕人妻熟女人妻洋洋| 欧美日一区二区| 久久视频在线观看| 亚洲欧洲性图库| 国产在视频一区二区三区吞精| 99re国产| av片在线免费观看| 亚洲精品美女久久| 极品美女一区二区三区视频| 天堂久久午夜av| 天天综合永久入口| 欧美激情中文字幕在线| 国产成人91久久精品| 男女视频网站在线观看| 你懂的亚洲视频| 久久久亚洲av波多野结衣| 欧美经典影片视频网站| 狠狠噜天天噜日日噜| 国产一区二区在线播放视频| 欧美6699在线视频免费| 中文字幕欧美一区| 亚洲视频精品在线| 国产日本欧美一区| 久久99久久人婷婷精品综合| 日本一二三区视频在线| 欧美亚洲一区在线| 欧美午夜在线| av网站在线免费看| 天堂精品高清1区2区3区| 97人人模人人爽人人少妇| 中文字幕在线观看二区| 丁香婷婷综合色啪| 精品久久97| 欧美日韩国产色| 欧美极品美女视频网站在线观看免费| 亚洲女人天堂网| 日韩高清不卡一区二区三区| 日本黄色免费在线观看| 国产一区二区三区三区在线观看| 国产精品久久久久久久久果冻传媒| 精品久久久久久久久久久久包黑料| 欧美另类z0zxhd电影| 日本大片在线播放| 青青草视频在线观看免费| 亚洲欧美自拍偷拍色图| 国产欧美一区二区三区精品观看| 国产日韩欧美二区| 性高潮久久久久久久| 精品三级在线观看视频| h视频网站在线观看| 国产三区四区在线观看| 香港欧美日韩三级黄色一级电影网站| 青青草原av| 亚洲自拍第二页| 日本一区免费观看| 美女扒开腿让男人桶爽久久动漫| 国产亚洲综合精品| 五月天中文字幕在线| av黄色免费在线观看| 亚洲精品四区| 中文字幕一区二区三区四区不卡| 无码精品国产一区二区三区免费| 国产成人无码a区在线观看视频| 粉嫩久久99精品久久久久久夜| 亚洲乱码国产乱码精品精天堂| 久久人91精品久久久久久不卡| 制服丝袜亚洲网站| 中文字幕黄色大片| 亚洲人成精品久久久久| 一区二区三区毛片| 久久99热精品这里久久精品| 婷婷亚洲综合| 亚洲欧美一区二区三区| 久久精品国产一区二区三| jlzzjlzz欧美大全| 丰满人妻中伦妇伦精品app| 日本77777| 日日操免费视频| 日韩hmxxxx| 国产精品三上| 色噜噜狠狠永久免费| 国产激情久久久久| 欧美变态口味重另类| 日韩伦理一区二区三区av在线| 99热国产免费| a在线观看视频| www.youjizz.com在线| 国产第一页视频| 久久国产成人午夜av影院| 日韩av高清| 999大胆视频| 亚洲欧洲精品天堂一级| 影视一区二区| 欧美男同性恋视频网站| 亚洲日本一区二区三区在线观看| 视频一区中文字幕精品| 久久国产精品久久久久久电车| 欧美精品videosex牲欧美| 91嫩草免费看| 操她视频在线观看| 精品中文字幕一区二区小辣椒| 国产精品三级久久久久久电影| 精品久久久久久亚洲国产300| 香蕉综合视频| 免费久久一级欧美特大黄| 国产成人女人毛片视频在线| 天天做天天爱天天综合网| 97精品人妻一区二区三区香蕉| 欧美精选午夜久久久乱码6080| 国内精品400部情侣激情| 轻轻操 在线观看| 蜜桃视频在线免费| 日韩精品久久久免费观看| 日本电影一区二区在线观看| 国产在线观看a视频| 伊人久久噜噜噜躁狠狠躁| 欧美一级在线亚洲天堂| 日韩在线观看| 欧美成人高清视频在线观看| 理论片中文字幕| 欧美第一页在线观看| 91在线公开视频| 久久国产一二区| 先锋影音男人av资源| 免费在线黄色网址| 国产精品久久久久久久久久久免费看| www.欧美激情.com| 亚洲精品乱码久久久久久蜜桃图片| 亚洲黄色精品视频| 欧美一级片免费在线观看| 成人高清在线观看免费| av官网在线| 99国产精品久久| 在线电影欧美日韩一区二区私密| 蜜臀av色欲a片无码精品一区| 久久久欧美一区二区| 成人黄色网址在线观看| 九九九在线观看视频| 国产另类在线| 中文在线观看免费视频| 在线看日韩av| a√在线中文网新版址在线| 国产九一精品| 成人性生交大片免费看在线播放| 尤物视频在线观看免费| 亚洲麻豆国产自偷在线| 一级片在线观看免费| 男女啪啪免费体验区| 中文字幕在线免费专区| 国产午夜福利一区| 亚洲精品免费av| 免费视频拗女稀缺一区二区| 欧美a级黄色大片| 亚洲高清久久久久久| 在线免费观看污视频| 精品伦精品一区二区三区视频密桃| 国产在线精品一区二区三区| 日本a级片久久久| 国产精欧美一区二区三区蓝颜男同| 日日夜夜精品免费视频| 97香蕉碰碰人妻国产欧美| 国产精品入口免费视频一| 欧美xxxx做受欧美88bbw| 成人在线免费高清视频| 日本一区二区黄色| 日本天堂在线视频| 中文字幕在线观看第三页| 午夜精品区一区二区三| 精品一区二区三区日本| а√天堂资源地址在线下载| 欧美牲交a欧美牲交aⅴ免费真| 国产精品黄色在线观看| 日韩女优中文字幕| 久久一区二区三| 四虎免费在线观看| 激情小说激情视频| 精品卡一卡二| 美女在线观看www| 日韩和的一区二在线| 在线观看免费av片| 天天综合天天综合| 国产综合欧美| 天天人人精品| 成人做爰视频网站| 欧美日韩高清影院| 在线天堂中文资源最新版| 中文字幕人妻一区二区三区视频| 久久亚洲综合色| 日本aⅴ亚洲精品中文乱码| 成年人视频网站在线| 日韩经典一区二区| 日韩乱码在线观看| 97精品国产97久久久久久春色| 国产精品免费视频xxxx| 亚洲激情网站免费观看| 黑人巨大精品欧美一区二区一视频| 天堂中文在线看| 色网站在线播放| 一区二区三区伦理| 亚洲精品美女在线| 日本a人精品| 精品国产乱子伦一区| av漫画网站在线观看| 激情综合闲人网| 91精品国产乱码久久久久久| 日本中文一区二区三区| 日本不卡1区2区3区| 国产小视频免费在线网址| 久久久久五月天| 一级黄色录像免费看| 欧美人妻一区二区三区| 91网在线免费观看| 国产成人综合在线播放| 欧美激情videoshd| 亚洲中字在线| 精品二区视频| 国产精品久久久久久亚洲av| 乱人伦中文字幕在线zone| 久久亚洲一级片| 在线综合+亚洲+欧美中文字幕| 99热播精品免费| 日韩一区二区三区视频| 欧美熟妇精品一区二区| 男女午夜激烈无遮挡| 成人高清伦理免费影院在线观看| www.亚洲国产| 黄色一区二区三区四区| 黑人精品欧美一区二区蜜桃| 2014亚洲片线观看视频免费| 精品国产亚洲一区二区三区大结局| 久久久噜噜噜久噜久久| 国产乱码一区二区| 粉嫩av四季av绯色av第一区| 亚洲网站视频| 亚洲午夜久久久久中文字幕| 日本中文字幕亚洲| 国产精品狼人久久影院观看方式| 亚洲欧洲精品一区二区三区不卡| 伊人久久久久久久久久久久久久| 性猛交富婆╳xxx乱大交一| 尤物av无码色av无码| 美女一区二区在线观看| 91成人综合网| 黄色大片网站在线观看| 国产精品h在线观看| 国内精品亚洲| 自拍偷拍99| 亚洲黄色影院| 日本道色综合久久影院| 97超碰人人看人人| www.五月婷婷| 无码一区二区三区视频| 亚洲精品成人一区| 欧美日韩五月天| 无码人妻精品一区二区三区温州| 99re热久久这里只有精品34| 国产精品亚洲综合在线观看| 日韩一区av在线| 久久久一本精品99久久精品66| www.日本xxxx| 日韩欧美视频一区二区三区四区| 欧洲成人一区二区三区| 久久久久久久色| 99久在线精品99re8热| 国产激情一区二区三区桃花岛亚洲| 国产日韩欧美一区二区三区四区| 国产偷窥女洗浴在线观看亚洲| 成人久久一区二区三区| 亚洲午夜影视影院在线观看| av三级在线观看| 亚洲成a人v欧美综合天堂下载| 性欧美暴力猛交69hd| 日韩欧美国产成人精品免费| 北条麻妃国产九九精品视频| 日韩欧美亚洲一二三区| 久久免费偷拍视频| 国产日韩在线视频| 欧美一级高潮片| 久久99精品久久久久久| 毛片不卡一区二区| 91视频免费观看| 欧美激情aⅴ一区二区三区| 国产精品波多野结衣| 少妇高潮一区二区三区喷水| 999热精品视频| 中文字幕手机在线观看| 神马国产精品影院av| 一本色道婷婷久久欧美| 五月天久久综合网| 精品久久久久久乱码天堂| 精品国产凹凸成av人网站| 欧美日产在线观看| 蜜臀尤物一区二区三区直播| 中文写幕一区二区三区免费观成熟| 国产在线一二区| 国产精品久久久久91| 91精品久久久久久久久中文字幕| 91伊人久久| 黄色av网站在线免费观看| 在线视频精品免费| 99视频在线精品国自产拍免费观看| 成人一区视频| 亚洲综合视频在线播放| 色偷偷免费视频| 亚洲一区二区三区高清| 一区二区三区无码高清视频| 久久精品欧美一区二区三区不卡| 亚洲精品国产美女| 深夜福利网站在线观看| 亚洲一区二区三区四区五区午夜| 国产精品午夜一区二区欲梦| 精品亚洲成a人片在线观看| 99久久人妻精品免费二区| 国产日韩视频一区二区三区| 91成人精品网站| 国产美女搞久久| 国产绿帽一区二区三区|