DedeCMS目录结构
/a:栏目静态页默认生成目录。为利于SEO优化,可以将文件指定到根目录。
/data:数据存放目录。Backupdata为数据库备份目录,网站迁移时需拷入。
/dede:默认的站点后台管理目录。为网站安全,建议更改名称。
/image:系统图片存放目录。
/include:核心类库文件存放目录。系统目录,一般都是全局函数、类处理文件、标签源码等一些保持系统正常运行的必须存在的文件。
/install:程序安装目录。安装成功后建议删除。
/member:会员中心目录。
/plus:插件及辅助功能目录。
/special:专题生成目录。
/templets:默认模板存放目录。
/uploads:上传下载文件存放目录。
favicon.ico : 图片 就是我们地址栏显示的图标。
index.php:网站默认首页。
robot.txt:搜索引擎抓起限制文件。
tags.php:网站标签生成文件。
Data
└─admin 系统后台常规配置,例如作者、快速导航、来源,以文本格式存放
└─backupdata 默认的系统数据库备份目录(后台可设置为其它目录)
└─cache 缓存目录(这个缓存是栏目缓存等)
└─enums 联动菜单
└─js 栏目js调用生成的js文件// 这个来源于后台生成—> 获取JS文件
└─mail 邮件
└─mark 水印相关
└─module 模块插件 //这里的文件均可以在后台模块管理处安装或下载
└─payment 看这文字跟支付相关,貌似V5.6无效了(待确定)
└─rss RSS订阅文件,在后台生成
└─safe DedeV5.6 新增的后台 验证安全设置 的配置文件
└─sessions sessions验证文件, 后台前台无法登录,来查看这个目录是不是不可写权限,
└─tag TAG标签
└─textdata 这个是如果将文章以文本形式存储的话,那么就会储存到这里
└─tplcache模板缓存目录,这个缓存一般是那些动态页
└─uploadtmp 上传的临时文件夹
└─vote 投票
└─ziptmp ZIP操作时的临时文件夹
└─common.inc.php 数据库配置文件
└─config.cache.inc.php 系统配置文件
└─config.cache.bak.php 系统配置文件备份
└─config.file.inc.php 远程发布的配置文件
└─downmix.data.php 防猜忌混淆字符串配置
└─safequestions.php 会员注册时的安全问题配置
└─template.rand.php 文档随机模板配置
Templets
└─default/ 系统默认的模板风格
└─images/ 默认模板中所用到的图片
└─js/ 默认模板中所用到的JS文件
└─css/ 默认模板中所用到的CSS文件
└─advancedsearch.htm 模型自定义搜索页面
└─ajaxfeedback.htm 文档内容页ajax评论模板
└─article_article1.htm 文章模型默认随机内容模板2
└─article_article2.htm 文章模型默认随机内容模板1
└─article_article.htm 文章模型默认内容模板
└─article_article_frame.htm 启用多站点后的文章模型内容模板
└─article_default.htm 模型内容模板不存在时的错误提示模板
└─article_default_sg.htm 独立表单模型内容模板不存在时的错误提示模板
└─article_image.htm 图集内容模板
└─article_image_frame.htm 多站点后的图集内容模板
└─article_infos.htm 分类信息内容模板
└─article_shop.htm 商城内容模板
└─article_soft.htm 软件内容模板
└─article_soft_frame.htm 多站点软件内容模板
└─article_spec.htm 专题内容模板
└─footer.htm 全站底部
└─googlemap.htm google地图(需要配合自由列表)
└─head.htm 全站头部
└─index.htm 网站首页
└─index_article.htm 文章频道封面
└─index_default.htm 模型频道封面模板不存在时的默认模板
└─index_default_sg.htm 独立表单模型频道封面模板不存在时的默认模板
└─index_image.htm 图集频道封面
└─index_infos.htm 分类信息频道封面
└─index_shop.htm 商城频道封面
└─index_soft.htm 软件频道封面
└─list_default.htm 模型列表模板不存在时的默认模板
└─list_default_sg.htm 独立表单模型列表模板不存在时的默认模板
└─list_free.htm 自由列表默认模板
└─list_image.htm 图集列表
└─list_infos.htm 分类信息列表
└─list_shop.htm 商城列表
└─list_soft.htm 软件列表
└─list_spec.htm 专题列表
└─search.htm 搜索结果页
└─singlepage.htm 单页面模板
└─tag.htm TAG首页
└─taglist.htm TAG列表
└─plus/ 模块插件的模板目录
└─system/ 其它的一些系统底层模板
/Include
└─Taglib 就是那些用在模板中的标签存放的目录了
└─Tpllib 动态模板标签,一般用在动态调用页面上面的标签
└─data 系统核心设置的数据,比如词库默认验证码
└─dialog 系统对话框存放目录,编辑器上面选择的类似于缩略图、插入图片文件
└─helpers织梦小助手
└─inc 这里存放一些用才引入的比较长的函数
└─js 系统JS类库
└─payment 支付接口
└─ckeditor 编辑器存放目录,用的是开源编辑器CK
└─code datalistcp动态分页类的编码语言包
└─calendar 日历控件,就是日期编辑框跳出来的那个日历框
└─arc.archives.class.php 文档类
└─arc.caicai.class.php 踩踩文档类
└─arc.freelist.class.php 自由列表类
└─arc.memberlistview.class.php会员列表视图类
└─arc.partview.class.php视图类
└─arc.rssview.class.php RSS视图类
└─arc.searchview.class.php搜索视图类
└─arc.sglistview.class.php单表模型列表视图类
└─arc.sgpage.class.php单表模型视图类
└─arc.specview.class.php专题视图类
└─arc.taglist.class.php Tag列表类
└─archives.func.php文件引入映射,为了兼容旧版本文件,这里将函数直接封装到archive小助手中
└─channelunit.class.php频道模型单元类
└─channelunit.func.php栏目小助手,本文件仅做一个映射
└─charset.func.php字符编码转换的小助手,这里仅做一个映射
└─control.class.php织梦控制器基类
└─datalistcp.class.php动态分页类
└─dedeajax2.js AJAX
└─dedeatt.class.php属性的数据描述
└─dedecollection.func.php采集小助手
└─dedehttpdown.class.php织梦HTTP下载类
└─dedetemplate.class.php模板引擎文件
└─dedevote.class.php投票类
└─diyform.class.php自定义表单解析类
└─downmix.inc.php防采集混淆字符串
└─enums.func.php联动菜单类
└─extend.func.php 扩展
└─filter.inc.php过滤核心处理文件
└─ftp.class.php FTP 操作类
└─image.class.php图像处理类
└─image.func.php图像处理相关函数
└─json.class.php JSON数据
└─mail.class.php SMTP邮件操作类
└─memberlogin.class.php会员登录类
└─model.class.php模型基类
└─oxwindow.class.php提示窗口对话框类
└─shopcar.class.php购物车
└─sitemap.class.php 网站地图
└─sphinxclient.class.php
└─typelink.class.php栏目连接
└─typeunit.class.admin.php栏目单元,主要用户管理后台管理处
└─typeunit.class.selector.php栏目单元,选择框
└─uploadsafe.inc.php为了防止用户通过注入的可能性改动了数据库,上传安全设置
└─userlogin.class.php管理员登陆类
└─wap.inc.php 手机WAP
└─zip.class.php Zip压缩类
└─common.func.php系统核心函数存放文件
└─dedetag.class.php Dede织梦模板类
└─membermodel.cls.php会员自定义模块
└─typeunit.class.menu.php栏目单元,主要用户管理后台管理菜单处
└─arc.listview.class.php文档列表类,分页设置
└─dedecollection.class.php Dede采集类
└─dedehtml2.class.php织梦HTML解析类V1.6 PHP版,这个类针对于采集程序,主要是获取某区域内的图片、超链接等信息
└─dedemodule.class.php织梦模块类
└─dedesql.class.php数据库类1
└─dedesqli.class.php数据库类2
└─Lurd.class.php LURD类,自动生成列出、修改、删除、增加等操作
└─splitword.class.php Unicode编码词典的php分词器
└─vdimgck.php验证图片
└─common.inc.php 配置文件
└─request.class.php处理外部请求变量的类
└─customfields.func.php系统核心函数存放文件
/Plus
└─ad_js.php 广告JS调用方式
└─advancedsearch.php 高级搜索
└─arcmulti.php
└─bookfeedback.php
└─bookfeedback_js.php
└─bshare.php 分享
└─car.php 显示购物车的商品
└─carbuyaction.php 购物车过程
└─comments_frame.php 二级域名评论调用
└─count.php 文档统计
└─digg_ajax.php 文档digg处理ajax文件
└─digg_frame.php 文档digg处理iframe文件
└─disdls.php 下载次数统计
└─diy.php 自定义表单
└─download.php 下载
└─erraddsave.php 错误提交
└─feedback.php 评论
└─feedback_ajax.php Ajax评论
└─feedback_js.php 评论js调用
└─flink.php 友情链接
└─flink_add.php增加友情链接
└─guestbook.php 留言板
└─heightsearch.php 高级搜索
└─list.php 栏目列表/频道动态页
└─mytag_js.php 自定义标签js调用方式
└─posttocar.php 发送到购物车
└─recommend.php 信息推荐
└─rss.php RSS列表页
└─search.php 搜索页
└─showphoto.php 显示图片
└─stow.php 内容收藏
└─task.php 计划任务
└─view.php 关于文章权限设置的说明
└─vote.php 投票
/Member
└─Templets 会员中心模版
└─Space 会员空间模版
└─Inc 配置数据
└─ajax_feedback.php
└─ajax_loginsta.php ajax登陆
└─album_add.php 图集发布
└─album_edit.php 图集编辑
└─archives_add.php 文档发布器
└─archives_do.php 文档管理
└─archives_edit.php 文档编辑器
└─archives_sg_add.php 单表模型发布器
└─archives_sg_edit.php 表模型编辑器
└─article_add.php 发布文章
└─article_edit.php 编辑文章
└─buy.php 购买
└─buy_action.php 购买过程
└─caicai.php 踩踩
└─check_card.php 充值卡验证
└─content_list.php 内容列表
└─content_sg_list.php 单表模型内容列表
└─control.php 重定向到首页
└─edit_baseinfo.php 编辑基本信息
└─edit_face.php 编辑头像
└─edit_space_info.php 编辑空间信息
└─feedback.php 用户留言
└─flink_main.php 增加网址
└─guestbook_admin.php 留言列表
└─index.php 会员中心首页
└─index_do.php 用户注册登陆处理
└─login.php 会员登陆
└─mtypes.php 我的分类
└─myfriend.php 我的好友
└─myfriend_group.php 我的好友圈
└─mypay.php 我的支付
└─operation.php 操作
└─pm.php 会员短消息
└─resetpassword.php 重置密码
└─search.php 搜索
└─shops_orders.php 商品订单
└─shops_point.php 商品支付点数
└─shops_products.php 商铺商品
└─soft_add.php 增加软件
└─soft_edit.php 编辑软件
└─spaceskin.php 空间皮肤
└─uploads.php 上传
└─uploads_edit.php 上传编辑
└─visit-history.php 浏览记录
└─config.php 配置中心
└─edit_fullinfo.php 编辑详细信息
└─feed.php 用户动态ajax显示页
└─mystow.php 我的收藏夹
└─reg_new.php 注册
└─uploads_add.php 增加附件
└─uploads_select.php 附件选择
└─ajax_membergroup.php 会员组
└─mail.php 邮件
/Install
织梦安装以后会生成index.html, install_lock.txt锁定,index.php.bak和module-install.php.bak更名备份;如果想重新安装,删除index.html和install_lock.txt,改名index.php和module-install.php,然后执行/install
/Upload
allimg 图片
flink 友情链接图片
litimg 缩略图
media 多媒体存放目录
soft 软件
userup 用户文件存放,例如头像
DedeCMS原理介绍
DedeCMS织梦内容管理系统以其优越的性能、稳定性和强大的功能优势,在国内拥有最大的用户群,今天我们分析一下这款功能强大的内容管理系统的模板引擎是如何工作的。
织梦模板引擎是一种使用XML名字空间形式的模板解析器,使用织梦解析器解析模板的最大好处是可以轻松的制定标记的属性,感觉上就像在用HTML一样,模板标签代码简洁易用,通俗易懂,新版的织梦模板引擎不单能实现模板的解析还能分析模板里错误的标记。
1、织梦模板引擎的代码样式有如下几种形式:
{dede:标记名称 属性='值'/}
{dede:标记名称 属性='值'}{/dede:标记名称}
{dede:标记名称 属性='值'}底层模板(InnerText){/dede:标记名称}
提示:
如果使用带底层模板的标记,必须严格用{dede:标记名称 属性='值'}{/dede:标记名称} 这种格式,否则会报错。
2、织梦模板引擎内置有多个系统标记,这些系统标记在任何场合都是能直接使用的。
(1) global 标记,表示获取一个外部变量,除了数据库密码之外,能调用系统的任何配置参数,形式为:
{dede:global name='变量名称'}{/dede:global}
或
{dede:global name='变量名称'/}
其中变量名称不能加 cfg_cmspath*,应该写成
{dede:global name='cfg_cmspath'/}
(2) foreach 用来输出一个数组,形式为:
{dede:foreach array='数组名称'}[field:key/] [field:value/]{/dede:foreach}
(3) include 引入一个文件,形式为:
{dede:include file='文件名称' ismake='是否为dede板块模板(yes/no)'/}
对文件的搜索路径为顺序为:绝对路径、include文件夹,CMS安装目录,CMS主模板目录
3、织梦标记允许在任何标记中使用函数对得到的值进行处理,形式为:
{dede:标记名称 属性='值' function='youfunction("参数一","参数二","@me")'/}
其中 @me 用于表示当前标记的值,其它参数由你的函数决定是否存在,例如:
{dede:field name='pubdate' function='strftime("%Y-%m-%d %H:%M:%S","@me")'/}
4、织梦标记允许有限的编程扩展。
格式为:
{dede:tagname runphp='yes'}
$aaa = @me;
@me = "bbscms.net";
{/dede:tagname}
@me 表示这个标记本身的值,因为标记内编程是不能使用echo之类的语句的,只能把所有返回值传递给@me。
此外由于程序代码占用了底层模板InnerText的内容,因此需编程的标记只能使用默认的InnerText。