Dedecms 增加字段 教程

所属分类: CMS教程 / dedecms 阅读数: 1172
收藏 0 赞 0 分享
很多网友反映,如何在现有发布模型基础上增加字段,例如在文章模型中增加“责任编辑”这一项,今天天涯就来教大家如何进行发布字段的增加。本教程适合有一定HTML基础、PHP基础的新手。

        首先了解dedecms的内容表存储结构,本教程针以dedecms V5为例,dedecms内容存储有一个主表dede_archives,所有内容的一些公用字段都存储在该表中,例如“标题”、“作者”、“发布时间”等,还有表就是dede_addon(*) 这个表存储的是内容的附加字段,例如文章模型,如果你发布一篇文章,文章标题、作者、发布时间等存放在dede_archives,然后内容存放在dede_addonarticle这个表上,其他内容模型也是如此。下面我们就来开始我们的修改。

        我们先增加一个共有字段,例如我们在每个模型中加入“责任编辑”这个项目。

        首先在数据库中添加一个字段,你可以借助phpmyadmin这样的工具完成,或者使用一些软件形式的mysql管理工具添加字段,在这里天涯就使用dedecms自带的【SQL命令运行器】执行字段添加:

以下为引用的内容:
        ALTER TABLE `dede_archives` ADD `editor` VARCHAR( 30 ) CHARACTER SET gb2312 COLLATE gb2312_chinese_ci NULL AFTER `writer` ;

        显示“成功执行1个SQL语句!”代表你添加成功。

        接下来我们修改页面,这里介绍dedecms的内容发布原理,和大多程序一样,内容发布是由一个提交表单页面,然后一个表单处理页面构成,新版本将发布的模板分离出来,更利于大家修改,首先讲下dedecms文章发布原理,首先是管理目录下的article_add.php文件,这个文件接收管理员提交的内容信息,该发布模型的模板可以在管理目录下的templets中找到,文件名为article_add.htm,提交的内容信息是由管理目录下的action文件article_add_action.php进行内容处理然后写入数据库中,所以修改我们只需要修改两个文件,一个模板,一个处理文件。

        我们先修改模板文件,这个对新人来说比较简单,直接用Adobe Dreamweaver CS3打开/dede/templets/article_add.htm这个文件,在相应地方添加一个表单,如图所示:

 

 

       修改完之后再进入后台文章发布界面,发现已经出现了发布字段“责任编辑”,但事情还没有结束,因为只是做了个界面,还没有实现功能,下面就来修改文章发布处理页action/article_add_action.php


        找到第123行,这里是为dede_archives增加内容的SQL语句,


以下为引用的内容:


<?php
//加入数据库的SQL语句
//----------------------------------
$inQuery = "INSERT INTO
dede_archives(
typeid,typeid2,sortrank,iscommend,ismake,channel,
arcrank,click,money,title,shorttitle,color,writer,source,litpic,
pubdate,senddate,arcatt,adminID,memberID,description,keywords,templet,redirecturl,likeid)
VALUES ('$typeid','$typeid2','$sortrank','$iscommend','$ismake','$channelid',
'$arcrank','0','$money','$title','$shorttitle','$color','$writer','$source','$litpic',
'$pubdate','$senddate','$arcatt','$adminID','0','$description','$keywords','$templet','$redirecturl','$likeid');";
?>
 

我们只需要在其中加入我们增加的字段“editor”,将其变为下列形式:

以下为引用的内容:

<?php
//加入数据库的SQL语句
//----------------------------------
$inQuery = "INSERT INTO
dede_archives(
typeid,typeid2,sortrank,iscommend,ismake,channel,
arcrank,click,money,title,shorttitle,color,writer,editor,source,litpic,
pubdate,senddate,arcatt,adminID,memberID,description,keywords,templet,redirecturl,likeid)
VALUES ('$typeid','$typeid2','$sortrank','$iscommend','$ismake','$channelid',
'$arcrank','0','$money','$title','$shorttitle','$color','$writer','$editor','$source','$litpic',
'$pubdate','$senddate','$arcatt','$adminID','0','$description','$keywords','$templet','$redirecturl','$likeid');";
?>
 

        这里添加内容页面我们已经修改完成了,下面就是调用,我们可以使用标记进行调用,我们在模板中,即/templets/article_*.htm(*代表任何内容),这里我们修改的是文章模型,所以只需要在/templets/article_artcile.htm相应地方加入标记:{dede:field name='editor' /},即可,看看我们的效果吧。

 

 
        按照同样办法,你可以修改其他发布页面,但是不要忘记还要修改内容编辑页面,这样使得我们的程序更完美。

提示下,内容编辑页面文件名分别是/dede/templets/article_edit.htm以及/dede/action/article_eidt_action.php,与添加页面不用是,在模板中增加的文本框默认内容是“<?php echo $arcRow["editor"]?>”,如图所示:

 

好了,增加字段我们这里就讲完了,不知道大家还有什么问题,如果有问题可以在织梦官网论坛

更多精彩内容其他人还在看

dedecms模板标签如何做判断示例代码

dedecms模板标签是可以做判断的,不过具体要看是哪个标签,有些标签是无法判断的。必须改源文件,下面有个示例,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

DEDE [field:global name=autoindex/] 按序号排列从0从1开始

调试程序用到[field:global name=autoindex/ ] 调用指定频道而频道前面需要加CSS代码,CSS代码正好是按序号排列的,于是修改了一下代码,在此与大家分享下,感兴趣的朋友可以收藏下
收藏 0 赞 0 分享

DEDECMS的20位MD5加密密文解密示例介绍

dedecms的20位md5加密算噶是从32位md5中截取的20位,所以去掉前3位喝最后1位,即可获得16位md5值,即可破解15位md5,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

织梦dedecms登录管理后台总是验证码错误的解决方案

织梦dedecms登录管理后台总是验证码错误在网上找了很多的解决方案,说法有很多种,但最后都无法解决这个问题,感兴趣的朋友可以了解下本文
收藏 0 赞 0 分享

如何让dedecms变成全站动态浏览有利于企业站

教大家如何让dedecms(织梦)变成全站动态浏览,对于企业站很有利哦!有时候dedecms全站的静态反而对于建设企业站不利,具体实现如下,感兴趣的朋友可以参考下,希望对大家有所帮助
收藏 0 赞 0 分享

使用dedecms搭建自己的本地网站(全程图解)

对于初学而言,网站都是在本地调试好后,才通过ftp上传到所买的空间或虚拟主机上,而无论是处于什么情况,学习在本地搭建网站的方法对于初学者是很有用的,下面与大家分享下具体的搭建过程
收藏 0 赞 0 分享

适合企业站的织梦常用标签大全(自己整理)

对于企业站而言其实不用了解那么多标签,在这里分享下自己总结的适合企业站的标签大全,希望大家收藏,以备不时之需
收藏 0 赞 0 分享

DEDECMS最为常用的分页标签及分页样式代码

今天我要分享的是我们最为常用的分页列表及分页样式代码,很多人在这个上面花费的时间较多,其实很简单,如果使用我下面的通用版本就很轻而易举的完工,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

dede标签云如何生成不同颜色、不同大小的tag标签

tag标签做网站的朋友想必知道吧,在本文要为大家讲解的的是dede标签云的使用,如何生成不同颜色、不同大小的tag标签,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

dedecms列表页标题title后加上页数其标题不重复的方法

在列表页的标题后加上页数使列表页的标题不重复这样更利于优化,下面是从搜索整理的解决方法,有类似需求的朋友可以参考下,希望对大家有所帮助
收藏 0 赞 0 分享
查看更多