不久以前,小編在織夢(mèng)論壇發(fā)表了《DEDE發(fā)布文章添加了來源網(wǎng)址功能》一帖,在發(fā)表本帖的同時(shí),小編也確實(shí)感覺到了其實(shí)這是一個(gè)雞肋功能,因?yàn)橹形恼鹃L(zhǎng)的一大特點(diǎn)就是喜歡轉(zhuǎn)載而不附帶他人的鏈接,果然,此帖的響應(yīng)者寥寥無幾。
就在前天,又有一個(gè)網(wǎng)友看到了此帖,并通過QQ的形式找到了小編,希望能將這篇教程發(fā)布出來,他非常希望可以實(shí)現(xiàn)這個(gè)功能,那么現(xiàn)在小編就來滿足這位朋友的需求,好了我們來看一下如何實(shí)現(xiàn)本功能。
原理分析:
添加來源網(wǎng)址功能,說白了就是在后臺(tái)和前臺(tái)發(fā)表文章的表單內(nèi)增加一個(gè)選項(xiàng),首先我們要做的是在數(shù)據(jù)庫增加一個(gè)字段,然后在dedecms后臺(tái)與前臺(tái)文件分別添加相關(guān)代碼。下面,我們就以后臺(tái)(前臺(tái)添加的方法,請(qǐng)照葫蘆畫瓢,不再贅述)添加來源網(wǎng)址的功能為例,講述一下如何實(shí)現(xiàn)本功能。
實(shí)現(xiàn)步驟:
1.操作數(shù)據(jù)庫
在數(shù)據(jù)庫添加一個(gè)字段,這個(gè)字段需要添加到dedecms的dede_archives 表中,你可以通過phpmyadmin工具的可視化工具來操作,也可以在后臺(tái)-系統(tǒng)-SQL命令行工具來執(zhí)行SQL語句,語句如下:
ALTER TABLE `dede_archives` ADD `source_url` char(255) NOT NULL DEFAULT '0';
在上面的語句中,我們可以了解到紅色的為表名,藍(lán)色的為字段(這是網(wǎng)給來源網(wǎng)址定義的字段名,如果你想用其它字段名稱,請(qǐng)?jiān)谙旅娴慕坛讨型叫薷模G色的255表示字段最大的長(zhǎng)度是255個(gè)字符。注意:如果你在安裝dedecms時(shí)修改了表前綴,請(qǐng)修改紅色部分的表名稱。
相關(guān)文章:MySql在已知數(shù)據(jù)表添加新字段的語句
完成這一步后,進(jìn)入第2步。
2.修改后臺(tái)文件
我們需要修改的文件共有四個(gè)(這里是以文章模型為例,如果你想在其它模型中增加來源網(wǎng)址,請(qǐng)修改相應(yīng)的模板與文件),分別是后臺(tái)目錄(默認(rèn)是dede,如果你修改了后臺(tái)地址,請(qǐng)找到相應(yīng)路徑)下的:article_add.php、article_edit.php與后臺(tái)templets下的article_add.htm、article_edit.htm
首先打開article_add.php文件,查找://對(duì)保存的內(nèi)容進(jìn)行處理
在 if(empty($writer))$writer=$cuserLogin->getUserName(); 的下面添加代碼:
if(empty($source_url))$source_url='www.veryhuo.com'; //如果為空則是www.veryhuo.com
這一步的目的在上面的注釋中已經(jīng)說明了,不再重復(fù)。相關(guān)修改見圖一:
找到source,按格式插入:source_url
找到$source,按格式插入:$source_url
以上操作目的是寫入數(shù)據(jù)庫。修改情況見圖二:
圖二
恭喜你,完成了四個(gè)文件之一的修改。下面我們來進(jìn)行article_edit.php的修改。
首先,查找://對(duì)保存的內(nèi)容進(jìn)行處理 在下面添加
if(empty($source_url))$source_url='www.veryhuo.com';//如果為空則是www.veryhuo.com
可以參照?qǐng)D一來操作。
繼續(xù)查找:
$source = cn_substrR($source,30);
在下面添加:
$source_url = cn_substrR($source_url,255);
再查找(約193行):
source='$source',
在下面添加:
source_url='$source_url',
OK.現(xiàn)在已經(jīng)完成兩個(gè)文件的操作了,夠長(zhǎng)了,分個(gè)頁,請(qǐng)點(diǎn)擊下一頁。