当前位置:文档之家› DEDE仿站教程

DEDE仿站教程

很多人只知道要教程,要这要那的,连基本的程序结构、模板文件都不熟悉。

即使下了别人的模板也不会修改,还硬说是别人的模板有问题。

在这里很多人只知道要教程,要这要那的,连基本的程序结构、模板文件都不熟悉。

即使下了别人的模板也不会修改,还硬说是别人的模板有问题。

在这里要奉劝各位新手站长。

磨刀不误砍材功。

想要学仿站、或者你用别的站你总的要会修改吧,没有什么模板别人做好了你就完全能用,总要修改一些的(官方的除外啊)这里拿5.3来做参考。

请对号入坐。

开始前请先下载安装DEDECMSV5.3的最新版本。

先来说下DEDE的目录结构,看下那些文件夹都是放的什么东东/dede 这个是后台管理的目录。

/date 这是一些系统数据。

系统配置文件就在此目录下。

/html 官方默认的生成HTML目录。

当然你也可以不用。

另外设置成其他目录。

我些新手总喜欢改这里的文件。

老有人问我。

怎么修改了模板怎么生成了一下都还原了呢。

哪知道修改的不是模板呢。

/member 会员文件夹。

包括注册登陆个人空间控制面板等其模板在其目录下的templets文件夹下一般比较常修改的几个模板解释下head.htm 这是会员后台的头部foot.htm 这是会员后台的尾部index.htm 这是会员后台的首页login.htm 登陆模板reg-new.htm 注册模板/special 这是专题目录。

包含生成好的专题列表页和专题内容页/plus 插件目录/include 系统函数文件/uploads 上传文件目录/templets 模板文件目录。

这个是重点。

现在我来把里面的文件来解释下。

让你心里明白。

在这里只说templets下的两个目录default和style/templets/style 该文件夹下包含所有的CSS文件。

大名鼎鼎的dedecms.css 就在此文件夹下。

/templets/default 该文件夹下包含所有的前台模板。

head.htm 头部模板footer.htm 尾部模板index.htm 首模板index_*.htm 频道封面模板list_*.htm 频道列表页模板article_*.htm 内容页模板search.htm 搜索页模板singlepage.htm 单页模板tag.htm 标签页模板taglist.htm 标签列表页模板看看。

上面这些是不是基本都包括了所有常用的页面。

如果你把这些文件都熟悉都搞懂了。

仿站那还不是小菜一叠啊。

用DW打开这些模板看下吧,特别留意标签哦,对照着前台来看。

什么样的标签对应什么样的效果,你就会明白。

以后怎么在仿站的时候再调用了。

也不必要都记住。

知道在哪里就行。

真要用。

可以马上找到。

目录结构基本上说完了。

对了说下。

我是准备系统的先讲一遍流程。

然后最终会出个视频教程配合。

这样大家会比较好懂。

把这一系列的文章看下去算是学习基础知识。

视频则是我演示实战。

我会选一个站出来仿。

由于时间有限,我会每天写一篇出来。

至于总工有多少篇,我也不清楚。

反正讲完为止。

明天继续讲DEDECMS模板代码结构分析转载请写名其出处:草根站长联盟要奉劝各位新手站长。

磨刀不误砍材功。

想要学仿站、或者你用别的站你总的要会修改吧,没有什么模板别人做好了你就完全能用,总要修改一些的(官方的除外啊)这里拿5.3来做参考。

请对号入坐。

开始前请先下载安装DEDECMSV5.3的最新版本。

先来说下DEDE的目录结构,看下那些文件夹都是放的什么东东/dede 这个是后台管理的目录。

/date 这是一些系统数据。

系统配置文件就在此目录下。

/html 官方默认的生成HTML目录。

当然你也可以不用。

另外设置成其他目录。

我些新手总喜欢改这里的文件。

老有人问我。

怎么修改了模板怎么生成了一下都还原了呢。

哪知道修改的不是模板呢。

/member 会员文件夹。

包括注册登陆个人空间控制面板等其模板在其目录下的templets文件夹下一般比较常修改的几个模板解释下head.htm 这是会员后台的头部foot.htm 这是会员后台的尾部index.htm 这是会员后台的首页login.htm 登陆模板reg-new.htm 注册模板/special 这是专题目录。

包含生成好的专题列表页和专题内容页/plus 插件目录/include 系统函数文件/uploads 上传文件目录/templets 模板文件目录。

这个是重点。

现在我来把里面的文件来解释下。

让你心里明白。

在这里只说templets下的两个目录default和style/templets/style 该文件夹下包含所有的CSS文件。

大名鼎鼎的dedecms.css 就在此文件夹下。

/templets/default 该文件夹下包含所有的前台模板。

head.htm 头部模板footer.htm 尾部模板index.htm 首模板index_*.htm 频道封面模板list_*.htm 频道列表页模板article_*.htm 内容页模板search.htm 搜索页模板singlepage.htm 单页模板tag.htm 标签页模板taglist.htm 标签列表页模板看看。

上面这些是不是基本都包括了所有常用的页面。

如果你把这些文件都熟悉都搞懂了。

仿站那还不是小菜一叠啊。

用DW打开这些模板看下吧,特别留意标签哦,对照着前台来看。

什么样的标签对应什么样的效果,你就会明白。

以后怎么在仿站的时候再调用了。

也不必要都记住。

知道在哪里就行。

真要用。

可以马上找到。

目录结构基本上说完了。

对了说下。

我是准备系统的先讲一遍流程。

然后最终会出个视频教程配合。

这样大家会比较好懂。

把这一系列的文章看下去算是学习基础知识。

视频则是我演示实战。

我会选一个站出来仿。

由于时间有限,我会每天写一篇出来。

至于总工有多少篇,我也不清楚。

反正讲完为止。

在上一节,我们了解了DEDECMS的程序目录结构和相关模板的含义,通过第一节,我们对DEDE的模板有了一个初步的认识。

在这一节,我将引导大家来分析和了解DEDE模板文件的代码结构。

准备工作:1:安装好DW,如果实在不想安装也行。

用记事本也可以。

不过用DW可以把结构看的很清楚。

在记事本里看会把你搞迷糊的2:你安装了DEDECMS。

并进入/templets/default(默认模板目录)目录。

OK!Let's GO!用DW打开文件index.htm如果你不熟悉HTML和CSS 建议去补习下。

在这里就不系统讲这些额外的东西了。

在这里假设你看的懂HTML和CSS代码,会不会写姑且不管。

先来看下<head></head>部分。

head上面的一般不管。

在head 标签范围内主要包括了三类东西1:title标签2:mete标签keywords description等3:CSS文件链接。

大家可以看下head部分。

是不是包括了这几部分。

至于那些JS调用都不是必须的。

只不过在首页index.htm模板有用到一些特殊的地方需要调用函数才加在head里的。

我把代码贴出来了<title>{dede:global.cfg_webname/}</title><meta name="description" content="{dede:global.cfg_description/}" /><meta name="keywords" content="{dede:global.cfg_keywords/}" /><link href="{dede:global.cfg_templeturl/}/style/dedecms.css" rel="stylesheet" media="screen" type="text/css" />{dede:global.cfg_webname/}是你的网站名{dede:global.cfg_description/}是你的网站描述{dede:global.cfg_keywords/} 是你的网站关键字你在仿站的时候这三个值应该都是别人的。

要变成自己的就要用这些标签替换掉然后我们再往下看。

紧跟着的是<body></body> 标签。

这里面的内容才是页面正文的开始。

body里的结构大体如下<body class="index">{dede:include filename="head.htm"/}中间代码{dede:include filename="footer.htm"/}</body>大家这样看结构就清楚了吧。

{dede:include filename="head.htm"/}是头部代码如果你要修改头部代码就去head.htm{dede:include filename="footer.htm"/}是尾部代码同样你要修改就去footer.htm 其他index_*.htm list_*.htm article_*.htm 等几乎所有的模板结构都是这样的。

现在有个大体的印象了。

每个模板主要有两个部分构成<head></head> 部分和<body></body> 部分<body></body> 部分又由头部模板中间模板和尾部模板。

在所有模板中head.htm 和footer.htm 是其他模板的公共模板。

都要调用到它们。

所以当制作模板的时候,最好把头部和尾部设计成这样。

可以和系统同步。

OK。

是不是也很简单。

下一节就讲DEDECMS的标签使用。

面对这些标签的使用做一个简单的介绍:1、标签名称:adminname功能说明:获得责任编辑名称使用实例:{dede:adminname /}2、标签名称:arclist功能说明:文章列表调用标记使用实例:{dede:arclist flag='h' typeid='' row='' col='' titlelen='' infolen=''imgwidth='' imgheight='' listtype='' orderby='' keyword='' limit='0,1'}<a href='[field:arcurl/]'>[field:title/]</a>{/dede:arclist}参数说明:col='' 分多少列显示(默认为单列),5.3版中本属性无效,要多列显示的可用div+css实现row='10' 返回文档列表总数typeid='' 栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;titlelen = '30' 标题长度等同于titlelengthinfolen='160' 表示内容简介长度等同于infolengthimgwidth='120' 缩略图宽度imgheight='90' 缩略图高度listtype='all' 栏目类型(顶级栏目??)orderby='sortrank' 文档排序方式§ orderby='hot' 或orderby='click' 表示按点击数排列§ orderby='sortrank' 或orderby='pubdate' 按出版时间排列§ orderby='near'§ orderby=='lastpost' 按最后评论时间§ orderby=='scores' 按得分排序§ orderby='id' 按文章ID排序§ orderby='rand' 随机获得指定条件的文档列表keyword='' 含有指定关键字的文档列表,多个关键字用","分innertext = '' 单条记录样式aid='' 指定文档IDidlist ='' 提取特定文档(文档ID)channelid 频道IDlimit='' 起始,结束表示限定的记录范围(如:limit='1,2')flag = 'h' 自定义属性值:头条[h]推荐[c]图片[p]幻灯[f]滚动[s]跳转[j]图文[a]加粗noflag = '' 同flag,但这里是表示不包含这些属性orderway='desc' 值为desc 或asc ,指定排序方式是降序还是顺向排序,默认为降序subday='天数' 表示在多少天以内的文档3、标签名称:arclistsg功能说明:单表模型的文章列表调用标记使用实例:{dede:arclistsg flag='h' typeid='' row='' col='' titlelen='' orderway='' keyword='' limit='0,1'}<a href='[field:arcurl/]'>[field:title/]</a>{/dede:arclistsg}参数说明:col='' 分多少列显示(默认为单列),5.3版中本属性无效,要多列显示的可用div+css实现row='10' 返回文档列表总数typeid='' 栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;titlelen = '30' 标题长度等同于titlelengthorderwey='desc'或'asc' 排序方向keyword= 含有指定关键字的文档列表,多个关键字用","分innertext = "[field:title/]" 单条记录样式(innertext是放在标签之间的代码)arcid='' 指定文档IDidlist ='' 提取特定文档(文档ID)channelid = '' 频道IDlimit='' 起始,结束表示限定的记录范围(如:limit='1,2')flag = 'h' 自定义属性值:头条[h]推荐[c]图片[p]幻灯[f]滚动[s]跳转[j]图文[a]加粗subday='天数' 表示在多少天以内的文档4、标签名称:autochannel功能说明:按排序位置的获取单个栏目的链接信息使用实例:{dede:autochannel partsort='' typeid=''}{/dede:autochannel}参数说明:partsort = '0' 栏目所在的排序位置typeid = '0' 指定的父栏目5、标签名称:channel功能说明:获取栏目列表标签使用实例:{dede:channel type='top' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}<li><a href='[field:typelink/]'>[field:typename/]</a> </li>{/dede:channel}参数说明:typeid = '0' 栏目IDreid = '0' 上级栏目IDrow = '100' 调用栏目数col = '1' 分多少列显示(默认为单列)type = 'son' son表示下级栏目,self表示同级栏目,top顶级栏目currentstyle = '' 应用样式6、标签名称:channelartlist功能说明:获取当前频道的下级栏目的内容列表标签使用实例:{dede:channelartlist row=6}<dl><dt><a href='{dede:field name='typeurl'/}'>{dede:field name='typename'/}</a></dt><dd>{dede:arclist titlelen='42' row='10'} <ul class='autod'><li><a href="[field:arcurl /]">[field:title /]</a></li><li>([field:pubdate function="MyDate('m-d',@me)"/])</li></ul>{/dede:arclist}</dl>{/dede:channelartlist}参数说明:typeid = '0' 频道ID,多个请用","分隔row = '20' 获取的栏目返回值其他说明:除了宏标记外,channelArtlist 是唯一一个可以直接嵌套其它标记的标记,不过仅限于嵌套{dede:type}{/dede:type} 和{dede:arclist}{/dede:arclist} 两个标记。

相关主题