给织梦(DEDECMS)后台文章添加来源网址的字段
原理分析:
添加来源网址功能,说白了就是在后台和前台发表文章的表单内增加一个选项,首先我们要做的是在数据库增加一个字段,然后在dedecms后台与前台文件分别添加相关代码。下面,我们就以后台(前台添加的方法,请照葫芦画瓢,不再赘述)添加来源网址的功能为例,讲述一下如何实现本功能。
实现步骤:
1.操作数据库
在数据库添加一个字段,这个字段需要添加到dedecms的dede_archives 表中,你可以通过
phpmyadmin
工具的可视化工具来操作,也可以在后台-系统-SQL命令行工具来执行SQL语句,语句如下:ALTER TABLE `dede_archives` ADD `source_url` char(255) NOT NULL DEFAULT '0';
在上面的语句中,我们可以了解到红色的为表名,蓝色的为字段(这是烈火网给来源网址定义的字段名,如果你想用其它字段名称,请在下面的教程中同步修改),绿色的255表示字段最大的长度是255个字符。注意:如果你在安装dedecms时修改了表前缀,请修改红色部分的表名称。
相关文章:
MySql在已知数据表添加新字段的语句
完成这一步后,进入第2步。
2.修改后台文件
我们需要修改的文件共有四个(这里是以文章模型为例,如果你想在其它模型中增加来源网址,请修改相应的模板与文件),分别是后台目录(默认是dede,如果你修改了后台地址,请找到相应路径)下的:article_add.php、article_edit.php与后台templets下的article_add.htm、article_edit.htm
首先打开article_add.php文件,查找://对保存的内容进行处理
在 if(empty($writer))$writer=$cuserLogin->getUserName(); 的下面添加代码:
if(empty($source_url))$source_url='www.wangjinhai119.com'; //如果为空则是
www.wangjinhai119.com
这一步的目的在上面的注释中已经说明了,不再重复。相关修改见图一:
继续操作,查找代码:
$source = cn_substrR($source,30);
在下面添加:
$source_url = cn_substrR($source_url,255);
再查找://保存到主表
找到source,按格式插入:source_url
找到$source,按格式插入:$source_url
以上操作目的是写入数据库。修改情况见图二:
完成了四个文件之一的修改。下面我们来进行article_edit.php的修改。
首先,查找://对保存的内容进行处理 在下面添加
if(empty($source_url))$source_url='www.wangjinhai119.com';//如果为空则是
www.wangjinhai119.com
继续查找:
$source = cn_substrR($source,30);
在下面添加:
$source_url = cn_substrR($source_url,255);
再查找(约193行):
source='$source',
在下面添加:
source_url='$source_url',
在上一页,我们分别修改了后台文件
article_add.php与article_edit.php文件,现在要操作就是修改这两个文件对应的模板,分别是:
article_add.htm、article_edit.htm,进入修改教程:
首先修改article_add.htm
主要目的:添加来源网址选项,以便在后台发布文章时填写来源网址。
查找:
<td width="90"> 文章来源:</td> 在后面添加这段代码:
<td width="90"> 来源链接:</td> <td width="280"><input name="source_url" type="text" id="source_url" style="width:160px" value="" size="16"> <input name="selsource_url" type="button" id="selsource_url" value="选择"> </td>
修改后台
article_edit.htm这个文件的方法和
article_add.htm是差不多的,找到相应的位置添加即可。
到这里,本教程就全部结束了,关于会员前台的修改方法,与上述类似。简单说一下,需要修改的文件有两个,分别是
member/article_add.php与对应模板文件member/templets/article_add.htm无需操作数据库,只需要修改这两个文件即可。