花魁直播高品质美女在线视频互动社区 - 花魁直播官方版

 歡迎來(lái)到素材無(wú)憂(yōu)網(wǎng),按 + 收藏我們
登錄 注冊(cè) 退出 找回密碼

自定義織夢(mèng)cms文章置頂及其功能原理分析

時(shí)間: 2018-12-06 11:51 閱讀: 作者:素材無(wú)憂(yōu)網(wǎng)

本人在織夢(mèng)dedecms本發(fā)分類(lèi)信息發(fā)布系統(tǒng)那個(gè)功能的時(shí)候,因?yàn)?,用到置頂功能,這是很多分類(lèi)信息系統(tǒng)最很重要的特色,所以,對(duì)這個(gè)作了一個(gè)織夢(mèng)dedecms系統(tǒng)的研究,以前用織夢(mèng)dedecms系統(tǒng)建站,還真沒(méi)有發(fā)現(xiàn)這個(gè)功能,這個(gè)置頂功能在“高級(jí)參數(shù)”那里面,如下圖所示。 織夢(mèng)dedecms置頂圖     從上圖看到,他上面的置頂一周,一月,三個(gè)月等,對(duì)應(yīng)的數(shù)值分別是7,30,90等,這說(shuō)明這三個(gè)阿拉伯?dāng)?shù)字表示天數(shù),即7天,30天,90天等,由此我們只需要增加這里的數(shù)值即可。打開(kāi)在織夢(mèng)后臺(tái)dede/templets里面找到   article_edit.htm和article_add.htm這二個(gè)文件,然后,改上自己希望的天數(shù),例如,我想讓這個(gè)置頂為2天,那么在這二個(gè)模板文件里面,在下面二行代碼之間。插入<option value="2">置頂2天</option>   <option value='0'>正常排序</option> <option value="7">置頂一周</option>     當(dāng)然,不一定非得插入到這二行之間,完全可以插入到其它行里面,這個(gè)隨便,根據(jù)你自己的需要插入相應(yīng)的代碼即可,實(shí)際上就是上面代碼里面的vlue值代表的是天數(shù)。     如果你不是一個(gè)技術(shù)站長(zhǎng),到此也就不用向下看教程內(nèi)容,如果你想學(xué)建站技術(shù),請(qǐng)向下閱讀教程。     原理分析:     為什么我加個(gè)代碼就能置頂?現(xiàn)在我們就分析這他是如何通過(guò)我們選中相應(yīng)的置頂天數(shù),達(dá)到置頂?shù)摹?     當(dāng)我們點(diǎn)擊“保存”我們發(fā)布的文章,并選擇了置頂后,程序會(huì)把變量sortup的值,通過(guò)表單傳遞給程序文件artice.add.php文件,這個(gè)文件里面會(huì)根據(jù)這個(gè)sortup變量值,通過(guò)時(shí)間函數(shù)AddDay($pubdate,$sortup);把時(shí)間,設(shè)置為我們置頂時(shí)間,并插入到織夢(mèng)微表#@_arctiny里面,請(qǐng)注意,個(gè)時(shí)間函數(shù)的參數(shù),$pubdate是一串?dāng)?shù)字的時(shí)間,它是通過(guò)函數(shù)GetMkTime($pubdate)把我們發(fā)布文檔的時(shí)間,變成了Linux時(shí)間截,即一串?dāng)?shù)字,我們?cè)跀?shù)據(jù)庫(kù)里面,都以L(fǎng)inux時(shí)間截的形式保存著數(shù)據(jù),當(dāng)要取出這個(gè)時(shí)間的,變成人能夠看明白的時(shí)間,就要用到其它的函數(shù),例如織構(gòu)里面的MyDate()函數(shù),當(dāng)然,php系統(tǒng)函數(shù)也有很多。     當(dāng)把我們后臺(tái)置頂時(shí)間,添加到微表、附加表后和主表后,當(dāng)我們更新一下首頁(yè),我們置頂?shù)臅r(shí)間就會(huì)少一些,直到時(shí)間到了就不再置頂了,這個(gè)功能是通過(guò)后臺(tái)生成函數(shù)     織夢(mèng)都有哪些時(shí)間函數(shù)?這個(gè)我們打開(kāi)小助手文夾,找到time.helper.php,這里面全是織夢(mèng)的時(shí)間函數(shù),我們一個(gè)一個(gè)的看,這個(gè)在二次開(kāi)發(fā)時(shí),也是經(jīng)常用到的。     1.返回格林威治標(biāo)準(zhǔn)時(shí)間函數(shù):MyDate($format='Y-m-d H:i:s', $timest=0),例如,我當(dāng)前時(shí)間time()的值是1414940523,那么,我們可以通過(guò)MyDate函數(shù)進(jìn)行格式化,MyDate('y-m-d',time()),打印結(jié)果為:14-11-02。在這個(gè)里面前面的參數(shù),可以參考php手冊(cè)靈活調(diào)用。     2.從普通時(shí)間轉(zhuǎn)換為L(zhǎng)inux時(shí)間截函數(shù):GetMkTime($dtime),這個(gè)根上面的MyDate()函數(shù)正是相板,這個(gè)函數(shù)我們?nèi)苏D軌蚩吹降臅r(shí)間,變成一串?dāng)?shù)字,這樣便于向數(shù)據(jù)庫(kù)表保存,而上面的函數(shù),一般是從數(shù)據(jù)表取出時(shí)間用到。     3.增減時(shí)間函數(shù):SubDay($ntime, $ctime) 參數(shù)$ntime為當(dāng)前時(shí)間,$ctime為減少的時(shí)間。有減少就有增加,AddDay($ntime, $aday)函數(shù)就是增加函數(shù),不用多數(shù)極其簡(jiǎn)單。     4.返回格式化時(shí)間函數(shù):GetDateTimeMk($mktime)這個(gè)返回的是(Y-m-d H:i:s)風(fēng)格的函數(shù);GetDateMk($mktime)這個(gè)返回的是這種(Y-m-d)格式的日期,實(shí)際上這二個(gè)函數(shù)都是調(diào)用函時(shí)間函數(shù)MyDate()。這二個(gè)函數(shù)跟GetMKTime()正好相反方向轉(zhuǎn)化。     5.將時(shí)間轉(zhuǎn)換為距離現(xiàn)在的精確時(shí)間函數(shù):FloorTime($seconds)參數(shù)是秒數(shù),這個(gè)在特別開(kāi)發(fā)中應(yīng)用廣泛,但在一般的開(kāi)發(fā)中,一般用到的不多,甚至很少用到,算是比較專(zhuān)業(yè)的時(shí)間函數(shù)。     上面幾個(gè)織夢(mèng)dedecms的函數(shù),只是我們?cè)陂_(kāi)發(fā)網(wǎng)站中經(jīng)常用到的,但是織夢(mèng)dedecms 的php系統(tǒng)給我們提供的時(shí)間函數(shù),還有很多,參數(shù)也非常豐富。如果需要可以查詢(xún)php手冊(cè)。

版權(quán)聲明: 本站資源均來(lái)自互聯(lián)網(wǎng)或會(huì)員發(fā)布,如果侵犯了您的權(quán)益請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)刪除!謝謝!

轉(zhuǎn)載請(qǐng)注明: 自定義織夢(mèng)cms文章置頂及其功能原理分析

標(biāo)簽:  
相關(guān)文章
模板推薦