文章摘要:织梦dedeCMS二次开发文档;《织梦dedeCMS二次开发文档手册》是对织梦dedeCMS进行二次开发的详细说明文档,包括程序目录详解以及数据表结构字段。本攻略将会从两个方面,分别介绍程序目录和数据表结构字段。
织梦dedeCMS二次开发文档;《织梦dedeCMS二次开发文档手册》是对织梦dedeCMS进行二次开发的详细说明文档,包括程序目录详解以及数据表结构字段。本攻略将会从两个方面,分别介绍程序目录和数据表结构字段。

程序目录详解
织梦dedeCMS的程序目录结构如下所示:
dedecms |---- admin/ | |---- archiver.rar | |---- skin/ | |---- allboxfunc.php | |---- ckplayer/ | |---- config_gbk.php | |---- module_addon.php | ...... |---- include/ | |---- archives.class.php | |---- common.inc.php | |---- dedetaxonomy.class.php | |---- export.func.php | |---- lib_database.php | ...... |---- template/ | |---- default/ | | |---- images/ | | |---- js/ | | |---- index.htm | | ...... | |---- mobile/ | | |---- images/ | | |---- js/ | | |---- index.htm | | ...... |---- plus/ |---- data/ |---- uploads/ |---- index.php |---- tags.php |---- rss.php .....
其中,admin/目录存放着dedeCMS的后台系统代码,包括管理界面、管理员权限控制、文章和栏目管理、用户管理等等。include/目录存放着dedeCMS的核心代码,包括文章和栏目的处理、模板解析、网站的配置等等。template/目录存放着dedeCMS的模板文件,可以根据网站风格的要求来定制模板。plus/目录包含了很多dedeCMS的插件,如Sitemap、万能表单、留言板等等。data/目录存放网站的一些数据,例如数据库备份文件、上传的附件、虚拟路径配置文件等等。uploads目录存放着用户上传的附件,如图片、视频等等。其余一些php文件为网站的运营和SEO优化使用。
Python技术站热门推荐:
PDF电子发票识别软件,一键识别电子发票并导入到Excel中!
数据表结构字段
织梦dedeCMS使用的MySQL数据库中,包含了很多的数据表。下面介绍一下dedeCMS中比较重要的数据表结构和字段。
1. dede_archives表
该表存储了网站文章的信息,包括文章的ID、所属栏目、标题、作者、文章处理结果等等。
| 字段名称 | 字段含义 |
|---|---|
| id | 文章ID |
| typeid | 栏目ID |
| sortrank | 显示顺序 |
| flag | 文章属性 |
| ismake | 是否生成HTML |
| channel | 频道 |
| arcrank | 文章审核状态 |
| click | 阅读量 |
| title | 文章标题 |
| shorttitle | 文章短标题 |
| color | 文章标题颜色 |
| writer | 作者 |
| source | 文章来源 |
| litpic | 文章缩略图 |
| pubdate | 发布时间 |
| senddate | 撰写时间 |
| mid | 发布会员ID |
| keywords | 文章关键词 |
| description | 文章描述 |
| filename | HTML文件名 |
| dutyadmin | 维护管理员ID |
| weight | 权重 |
| typename | 栏目名称 |
| corank | 栏目级别 |
| isdefault | 是否首页 |
| defaultname | 别名 |
| namerule | 栏目目录规则 |
| namerule2 | 文章命名规则 |
| sitepath | 网站目录 |
| arcurl | 文章链接 |
| typeurl | 栏目链接 |
| videotime | 视频时长 |
| vheight | 视频高度 |
| vwidth | 视频宽度 |
| duration | 音频、视频时长 |
| scores | 评分数量 |
| goodpost | 赞的个数 |
| badpost | 踩的个数 |
| cptype | 相关文档类型 |
| cpfile | 相关文档名称 |
| groupid | 文档组 |
| userip | 发布IP |
| videolink | 视频链接 |
| infotags | 文档标签 |
| infozm | 标题拼音 |
| ishost | 是否为推荐 |
| totality | 评分总数 |
| notation | 评分次数 |
| maxpage | 最大页数 |
| hasdown | 是否有附件 |
| litpicwidth | 缩略图宽度 |
| litpicheight | 缩略图高度 |
| pdfsize | PDF文件大小 |
| videotype | 视频类型 |
| userip_add_dtime | IP地址和发布时间 |
2. dede_arctype表
该表存储了网站栏目的信息,包括栏目的ID、栏目名称、父级栏目、栏目的级别等信息。
| 字段名称 | 字段含义 |
|---|---|
| id | 栏目ID |
| reid | 父级栏目ID |
| topid | 顶级栏目ID |
| typename | 栏目名称 |
| typedir | 目录名 |
| isdefault | 是否为首页 |
| defaultname | 站点默认文件名 |
| namerule | 栏目目录规则 |
| namerule2 | 栏目命名规则 |
| description | 栏目描述 |
| keywords | 栏目关键词 |
| seotitle | SEO标题 |
| tagword | 栏目标签 |
| mid | 发布会员ID |
| maintable | 维护操作表 |
| crossid | 跨站点关联ID |
| ispart | 是否为封面 |
| corank | 栏目级别 |
| tempindex | 栏目主页模板 |
| temparticle | 文章模板 |
| templist | 列表模板 |
| namedhtml | 自定义静态页面 |
| namearc | 自定义内容页 |
| namelist | 自定义列表页 |
| ishidden | 是否显示在导航 |
| moresite | 第三方地址 |
| sitepath | 网站目录 |
| siteurl | 网址 |
| iswap | 是否为手机版 |
示例说明
示例1:如何在dede_archives中添加文章的坐标和地址字段?
1. 在dede_archives表中添加两个字段,分别为latlng和address
ALTER TABLE `dede_archives` ADD COLUMN `latlng` varchar(255) COLLATE utf8_unicode_ci DEFAULT '' COMMENT '坐标' AFTER `score`, ADD COLUMN `address` varchar(255) COLLATE utf8_unicode_ci DEFAULT '' COMMENT '地址' AFTER `latlng`;
修改
/include/arc.archives_newview.class.php文件,在makeContent方法中添加坐标和地址
$arctable = '#@__'.$channeltype.'';
$channelid = $arid ? GetTopid($arid) : '';
$addtable = $arctable.'_addtable';
$field = $cfg_mb_addon_fields ? "*,".$cfg_mb_addon_fields : "*";
$arcQuery = "SELECT arc.*,addf.*,tp.typename,tp.namerule,tp.ispart,tp.moresite,tp.siteurl,tp.iswap,tp.corank,tp.namerule2,tp.is_case,tp.list_viewtp,tp.title,d.fileurl as dfurl FROM `{$arctable}` arc LEFT JOIN `{$addtable}` addf ON addf.aid=arc.id LEFT JOIN `#@__arctype` tp ON tp.id=arc.typeid LEFT JOIN `#@__attachment` d ON d.aid=arc.id
WHERE arc.id='$aid' AND arc.arcrank > -1";
$arcRow = $dsql->GetOne($arcQuery);
if(is_array($arcRow))
{
extract($arcRow);
// 新加内容
$latlng = $addf['latlng'];
$address = $addf['address'];
}示例2:如何在dede_arctype表中添加栏目的图标字段?
1. 在dede_arctype表中添加一个名为typeicon的字段
ALTER TABLE `dede_arctype` ADD COLUMN `typeicon` varchar(100) COLLATE utf8_unicode_ci DEFAULT '' COMMENT '栏目图标' after `tagword`;
修改
/include/typeview.class.php文件,在MakeTypeTable()方法中添加图标
$row = $dsql->GetOne("SELECT * FROM ".$dsql->GetTable("#".$action."type")." WHERE id='$tid'");
if(isset($row['ismake'])&&$row['ismake']=='-1') $row = array();
$typeurl = GetFileUrl($row['id'],$row['typedir'],$row['isdefault'],$row['defaultname'],$row['namerule'],$row['namerule2'],$row['ispart'],$row['moresite'],$row['siteurl'],$row['sitepath']);
if(count($row)>0)
{
$wapstyle = empty($row['wapstyle']) ? '#' : $row['wapstyle'];
$row['typelink'] = $GLOBALS['_cfg_basehost']."/".str_replace($GLOBALS['_cfg_basedir'],'',$typeurl);
$row['typeicon'] = "<img src='\\images\\".$row['typeicon']."' />";
$row['nextid'] = 0;
$row['nexttypename'] = '';
$row['previd'] = 0;
$row['prevtypename'] = '';
return $row;
}
else
{
$this->DispError(0);
exit();
}注:以上仅为示例说明,实际开发中需要根据具体情况进行修改。
本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://www.szwangzhanjianshe.com/WebsiteNews/668.html



