1、Dede搭建环境所需软件appserv-win32-2.5.9.zip和DedeCMS-V5.7-GBK-SP1或UTF-8
或UTF-8
采用最新版本将解压后的dedecms文件如:打开文件里
文件夹将里面所有文件复制到安装appserv文件下www(这个为默认名称一般默认情况在
这个路径下根据你自己的具体安装)文件里
2、登陆127.0.0.1或你的空间域名进入dedecms基本设置
设置完成后就可以登陆后台进行下一步操作,将水印关闭建立顶级栏目修改文件保存路径
3、有了环境后重新建立dedecms时
《=======DEDECMS后台=========》
文件uplodads(上传时数据)templets(模板文件夹)data(数据库文件夹backupdata)image(图片文件夹CSS)JS(JS文件夹)及其它(单独文件非自动生成文件)
《======如果建立好后登陆后台时出现数据库连接错误可以重新安装方法为=====》
删除:install/install_lock.txt文件修改index.php.bak访问install如果不行就访问install/index.php这个文件夹
《========新建时保留==========》
appsery)cgi-bin)phpMyAdmin其他的可以删去然后重复第一步中说到的把文件复制到www 文件夹内
《==========================》
解析网址修改连接:C:\WINDOWS\system32\drivers\etc\host
4、调用模板标签
默认模板文件夹为根目录下\templets\default里我们会新建立风格模板如:新建模板
\templets\yc
这样就可以在首页看到我们自己的模板了
5、调用模板标签请参考pd.txt及默认模板内的标签
6、Pd.txt文件
一、观念,计划和利用模板,必需要领略下面几个观念
1、板块(封面)模板:
指网站主页或较量重要的栏目封面频道利用的模板,一般用“index_识别ID.htm”定名,另外,用户单独界说的单个页面或自界说符号,也可选是否支持板块模板符号,若是支持,系统会用板块模板符号引擎去理会后才输出内容或生成特定的文件。
2、列表模板:
指网站某个栏目的所有文章列表的模板,一般用“list_识别ID.htm”定名。
3、档案模板:
暗示文档查察页的模板,如文章模板,一般用“article_识别ID.htm”定名。
4、其余模板:
一般系统通例包括的模板有:主页模板、搜索模板、RSS、JS编译成果模板等,另外用户也可以自界说一个模板建设为恣意文件。
===================================================================== ===============================
二、定名,DedeCms模板默认定名法则如下
1、模板生存位置:
模板目次:cmspath/templets/样式名称(英文,默以为default,个中system为系统底层模
板,plus为插件利用的模板)/详细成果模板文件}
2、模板文件定名类型:
(1)index_识别ID.htm:暗示板块(栏目封面)模板;
(2)list_识别ID.htm:暗示栏目列表模板;
(3)article_识别ID.htm:暗示内容查察页(文档模板,包罗专题查察页);
(4)search.htm:搜索功效列表模板;
(5)index.htm:主页模板;
注解:[识别ID]可以在“频道模子打点”的处所得到,虽然,你也可以在“频道模子打点”的处所确定某个频道的模板定名。
例:list_image.htm 暗示是就是内容范例为图片集的栏目默认列表模板。
article_article.htm 暗示的是文章查察页模板。
===================================================================== ==============================
三、其余模板申明
1、默认底层模板
位置:cmspath/templets/system
成果:在没有指定符号的默认底层模板的时候,系统将自动挪用这个文件夹的相应文件作为底层模板。
2、插件目次模板
位置:cmspath/templets/plus
成果:评述、友情链接、RSS舆图等模板。
3、会员靠山模板
位置:cmspath/member/templets
成果:会员靠山的模板。
===================================================================== ================================
四、二次开发
DedeCms主要的模板理会类是include/inc_arcpart_view.php、include/inc_arclist_view.php、include/inc_archives_view.php,这些类是与pub_dedetag.php一起事情的,若是你想为文档模板、列表模板、板块模板增加一些成果,可以直接修改这几个类的ParseT emplet()或ParseT empletsFirst()这类的要领,把符号名称,属性对应试相应该的成果函数即时。[NextPage]
◆织梦模板符号简介:
--------------------------------------------------------------------------------
在相识DedeCms的模板代码之前,相识一下织梦模板引擎的常识长短常有意义的。织梦模板引擎是一种利用XML名字空间形式的模板理会器,利用织梦理会器理会模板的最大长处是可以轻松的拟定符号的属性,感受上就像在用HTML一样,使模板代码十分直观机动,新版的织梦模板引擎不仅能实现模板的理会还能阐明模板里错误的符号。
1、织梦模板引擎的代码样式有如下几种形式:
{dede:符号名称属性='值'/}
{dede:符号名称属性='值'}{/dede:符号名称}
{dede:符号名称属性='值'}自界说样式模板(InnerT ext){/dede:符号名称}
提示:
若是利用带底层模板的符号,必需严格用{dede:符号名称属性='值'}{/dede:符号名称} 这种名目,否则会报错。
===================================================================== ==============================================
2、织梦模板引擎内置有多个系统符号,这些系统符号在任何场合都是能直接利用的。(1) global 符号,暗示获取一个外部变量,除了数据库暗码之外,能挪用系统的任何设置参数,形式为:
{dede:global}{/dede:global} 或{dede:global/}个中变量名称不能加$ 标记,如变量$cfg_cmspath ,应该写成{dede:global/} 。
(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 function='strftime("%Y-%m-%d %H:%M:%S","@me")'/}
4、织梦符号答允有限的编程扩展。
名目为:
{dede:tagname runphp='yes'}
$aaa = @me;
@me = "123456";
{/dede:tagname}
@me 暗示这个符号自己的值,因此符号内编程是不能利用echo之类的语句的,只能把所有返回值通报给@me。
另外由于措施代码占用了底层模板InnerT ext的内容,因此需编程的符号只能利用默认的InnerT ext。
[NextPage]
织梦内容打点系统模板标签代码参考
--------------------------------------------------------------------------------
【Arclist 符号】
这个符号是DedeCms最常用的一个符号,也叫自由列表符号,个中hotart、coolart、likeart、artlist、imglist、imginfolist、specart、autolist 这些
1.模板路径调用标签:{dede:field name='templeturl'/}
2.网站标题调用标签:{dede:global name='cfg_webname'/}
3.栏目导航调用标签:首页
{dede:channel type='top' row='8' currentstyle="
{/dede:channel}
4.指定调用栏目标签:
{dede:onetype typeid='ID'}[field:typename /]{/dede:onetype}
5.频道栏目调用标签:
{dede:channel type='self'}
6.友情链接调用标签:{dede:flink row='24' linktype=2/}
7.网站版权调用标签:{dede:global name='cfg_powerby'/}
8.关键描述调用标签:
10.当前栏目名称标签:{dede:field name='typename'/}
11.当前位置调用标签:{dede:field name='position'/}
12.列表文章调用标签:{dede:list pagesize='8'}{/dede:list}
13.栏目链接调用标签:
[field:typelink function='str_replace("a ","a class=ulink ",@me)'/]
14.作者链接调用标签:[field:writer /]
15.列表点击调用标签:[field:click/]
16.列表评论调用标签:[field:postnum/]
17.查阅全文调用标签:查阅全文...
18.列表时间调用标签:[field:pubdate function="GetDateTimeMK(@me)"/]
19.列表分页调用标签:
{dede:pagelist listsize='4' listitem='index pre pageno next end '/}
20.文章标题调用标签:{dede:field name="title"/}
21.文章来源调用标签:{dede:field name='source'/}
22.文章作者调用标签:{dede:field name='writer' /}
23.文章时间调用标签:
{dede:field name='pubdate' function='GetDateMk(@me)'/}
24.文章T ag调用标签:{dede:tag type='current'/}
25.文章点击调用标签:
26.文章内容调用标签:{dede:field name='body'/}
27.文章分页调用标签:
{dede:pagebreak/}
[评论]
[打印]
[关闭]
28.文章顶客次数标签:
{dede:field name='digg'/} 顶一下
29.上一篇下一篇标签: {dede:prenext get='pre'/} {dede:prenext get='next'/}
30.头条推荐调用标签:
{dede:arclist row=1 titlelen=24 orderby=pubdate att=2}
[field:description/]……
31.最新文章调用标签:
{dede:arclist row=8 titlelen=24 orderby=pubdate}
33.最新图文调用标签:
{dede:arclist row=4 titlelen=20 orderby=pubdate type='image.' imgwidth='152' imgheight='98'}
34.推荐文档调用标签:
{dede:arclist type='commend' titlelen='40' row='10'}
35.随机推荐调用标签:
{dede:arclist type='commend' titlelen='26' orderby='rand' row='10'}
/]
36.热点文档调用标签:
{dede:arclist orderby='click' titlelen='40' row='10'}
37.相关文档调用标签:
{dede:likeart titlelen='24' row='10'}
38.调用图片链接标记:
39.调用文字链接标记:
40.控制字数描述标记:[field:description function="cn_substr(@me,100)"/]...
41.调用文章tags标记:{dede:tag type='current'/}
42.文章关键字与描述:
{dede:field name='keywords'/}
{dede:field name='description' function='html2text(@me)'/}
43.栏目介绍:{dede:field name='description' function='html2text(@me)'/}
44.调用外部htm文件:{dede:include file='head.htm' ismake='yes'/}
45.搜索文章调用标签:
{dede:global name='keyword'/}的搜索结果- {dede:global name='cfg_webname'/}
46.递增序列号:[field:global name=autoindex/]
47.列表隔5行加一行线:
{dede:list pagesize='50'}
target=_blank>[field:title function="cn_substr(@me,48)"/]
$b=strftime('%m-%d',@me); $ntime = time(); $day3 = 3600 * 24;
if(($ntime - @me) < $day3) @me = $a;
else @me =$b;
[/field:pubdate]
[field:global name=autoindex runphp="yes"]
if(@me%5==0)@me="
else @me="";
[/field:global]
{/dede:list}
48.最新文章列表“隔行换色”的方法
{dede:arclist orderby=pubdate titlelen='26' row='10'}
[field:global runphp='yes' name=autoindex]
$a="
$b="
if ((@me%2)==0) @me=$a;
else @me=$b;
[/field:global]
{/dede:arclist}
49.24小时内更新的文章时间显示为红色:
[field:pubdate runphp='yes']
$a="".strftime('%m-%d',@me)."";
$b=strftime('%m-%d',@me);
$ntime = time();
$day3 = 3600 * 24;
if(($ntime - @me) < $day3) @me = $a;
else @me =$b;
[/field:pubdate]
50.COPY页面内容,自动在后面加上网站信息,利于SEO
document.body.oncopy = function () { setTimeout( function () { var text = clipboardData.getData("text"); if (text) { text = text + "\r\n本篇文章来源于www.地址.COM 原文链接:"+location.href; clipboardData.setData("text", text); } }, 100 ) }
51.按时间点击文章排行榜调用标签:
按总:{dede:arclist row='24' titlelen=24 orderby=click}
按月:{dede:arclist row='24' titlelen=8 orderby=click subday=30}
按周:{dede:arclist row='24' titlelen=8 orderby=click subday=7}
在首页调用某栏目的子栏目
{dede:channel type=’sun’typeid=’栏目ID’}
{/dede:channel}
或者{dede:global name=’maplist’/}
52.搜索表单调用标签:
53.实现“文章标题-2级栏目-1级栏目-网站名”形式
{dede:field name='title'/}-{dede:field name='position' runphp='yes'}
$tc="-"; //分隔符
$tw=$GLOBALS['cfg_list_symbol']; //调用位置分隔符
@me=html2text(@me); //去除html标签
$tf=split($tw,@me); //分解成数组
for($ta=(count($tf)-2);$ta>=1;$ta--){ //循环赋值给$tk
$tk.=trim($tf[$ta]).$tc;
}
$tk=substr($tk,0,-1);
@me=$tk; //赋值给@me
{/dede:field}-{dede:global name='cfg_webname'/}
54.调用缩略图:
55.发布的文章显示红色日期或加上new字或new小图片给近三天(或当天)发布的文章显示红色日期或加上new字或new小图片等。都是围绕pubdate做文章,写扩展的。
第2、3要注意的问题是:如:"中不能用双引号,否则不行。
如果要给当天的加,把3600 * 24 * 3改为3600 * 24 即可。
(1)、==========红色的日期========
[field:pubdate runphp='yes']
$a="".strftime('%m-%d',@me)."";
$b=strftime('%m-%d',@me);
$ntime = time();
$day3 = 3600 * 24 * 3;
if(($ntime - @me) < $day3) @me = $a;
else @me =$b;
[/field:pubdate]
(2)、==========红色的(new)========
[field:pubdate runphp='yes']
$aa=strftime('%m-%d',@me);
$ntime = time();
$tagtime = @me;
$day3 = 3600 * 24 * 3;
if($tagtime > $ntime-$day3) @me = "(new)";
else @me = $aa;
[/field:pubdate]
(3)、==========加new.gif小图片========
[field:pubdate runphp='yes']
$aa=strftime('%m-%d',@me);
$ntime = time();
$tagtime = @me;
$day3 = 3600 * 24 * 3;
if($tagtime > $ntime-$day3) @me = "".$aa;
else @me = $aa;
[/field:pubdate]
56.一种很酷的时间效果
[field:pubdate runphp="yes"]
if((time()-@me)<(60*60*24)){@me=' '.strftime("%H:%M",@me).'';}
else {@me=strftime("%m-%d",@me);}
[/field:pubdate]
57.DEDE seo小技巧加个百度搜索本篇文章
【搜索舞步】
当前位置{dede:field name='typelink'/}|
当前页调用本文地址的标签调用方法
{dede:CurUrl runphp=?yes?}
@me = GetCurUrl();
{/dede:CurUrl}
===================================================================== ==============================
dedecms5.7内容页列表页获取顶级栏目名称的标签
方法一:
{dede:field.typeid runphp=?yes?}$ID = @me; $sql = “SELECT * FROM `dede_arctype` WHERE id=$ID”;$query = mysql_query($sql);$row=mysql_fetch_array($query); $relID = “$row[reid]“; if($relID == 0) {@me =$row[typename];}else{$sql = “SELECT `typename` FROM `dede_arctype` WHERE id=$relID”;$query = mysql_query($sql);$row=mysql_fetch_array($query); @me = $row[typename];}{/dede:field.typeid}
方法二:
{dede:field.title
runphp=?yes?}list($toptype,$sontype)=split(…/?,@me);@me=$toptype;{/dede:field.title}
两种方法各有长短:第一种方法在列表页和内容页中都可以获取到顶级栏目名称,但是代码
比较长,第二种方法只能在列表页中获取到,而内容页中却会读取本文的标题代码比较短
============================================
{dede:field name='typeid' runphp='yes'}
/*
title:获取栏目的上级栏目链接地址
author:织梦的鱼
time:2011.12.19
*/
global $dsql;
/*获取当前栏目信息*/
$typeid = @me;
$query = "SELECT reid FROM dede_arctype where id = $typeid";
$rs = $dsql->GetOne($query);
$reid = $rs['reid'];//获取到栏目的上级栏目
/*获取上级栏目信息*/
$query2 = "SELECT * FROM dede_arctype where id = $reid";
$row = $dsql->GetOne($query2);
/*打印栏目上级栏目链接信息*/
$typename = $row['typename'];
$link = GetT ypeUrl($row['typeid'],MfT ypedir($row['typedir']),$row['isdefault'],$row['defaultname' ],$row['ispart'],$row['namerule2'],$row['moresite'],$row['siteurl'],$row['sitepath']);
@me = "$typename";
{/dede:field}