DEDE的使用最多的标签技巧详解
关键描述调用标签:
{meta name="keywords"content="{dede:field name=''''keywords''''/}"
和
{meta name="description"content="{dede:field name=''''description''''function=''''html2text(@me)''''/}"
模型板路径调用标签:{dede:field name=''''templeturl''''/}
网站标题调用标签:{dede:global name=''''cfg_webname''''/}
栏目导航调用标签:
a href="/"首页/a/li {dede:channel type=''''top''''row=''''8''''currentstyle="li class=''''thellosclass''''a href=''''~typelink~''''~typename~/a/li"} li ahref=''''[field:typelink/]''''target="_blank"[field:typename/]/a/li {/dede:channel}
指定调用栏目标签:{dede:onetype typeid=''''ID''''}[field:typename/]{/dede:onetype}
频道栏目调用标签:{dede:channel type=''''self''''}li ahref=''''[field:typelink/]''''[field:typename/]/a/li{/dede:channel}
友情链接调用标签:{dede:flink row=''''24''''linktype=2/}
网站版权调用标签:{dede:global name=''''cfg_powerby''''/}
网站备案调用标签:{dede:global name=''''cfg_beian''''/}
当前栏目名称标签:{dede:field name=''''typename''''/}
当前位置调用标签:{dede:field name=''''position''''/}
列表文章调用标签:{dede:list pagesize=''''8''''}{/dede:list}
栏目链接调用标签:[field:typelink function=''''str_replace("a","a",@me)''''/]
作者链接调用标签:[field:writer/]
列表点击调用标签:[field:click/]
列表评论调用标签:[field:postnum/]
查阅全文调用标签:a href="[field:arcurl/]"查阅全文./a
列表时间调用标签:[field:pubdate function="GetDateTimeMK(@me)"/]
列表分页调用标签:{dede:pagelist listsize=''''4''''listitem=''''index pre pageno next end''''/}
文章标题调用标签:{dede:field name="title"/}
文章来源调用标签:{dede:field name=''''source''''/}
文章作者调用标签:{dede:field name=''''writer''''/}
文章时间调用标签:{dede:field name=''''pubdate''''function=''''GetDateMk(@me)''''/}
文章Tag调用标签:{dede:tag type=''''current''''/}
文章点击调用标签:
script src="{dede:field name=''''phpurl''''/}/count.php?aid={dede:field name=''''ID''''/}&mid={dede:field name=''''memberid''''/}&view=yes"language="javascript"/script
文章内容调用标签:{dede:field name=''''body''''/}
文章分页调用标签:
{dede:pagebreak/} [a href="{dede:field name=''''phpurl''''/}/stow.php?arcID={dede:field name=ID/}"保藏/a] [a href="{dede:field name=''''phpurl''''/}/recommend.php?arcID={dede:field name=ID/}"保举/a] [a href="{dede:field name=''''phpurl''''/}/feedback.php?arcID={dede:field name=ID/}"评论/a] [a href="#"onClick="window.print();"打印/a] [a href="#"onClick="window.close();"关闭/a]
文章顶客回数标签:{dede:field name=''''digg''''/}a href="javascript:Digg(''''digg'''',{dede:field name=''''id''''/});"顶一下/a
上一篇下一篇标签:{dede:prenext get=''''pre''''/}{dede:prenext get=''''next''''/}
头条推荐调用标签:{dede:arclist row=1titlelen=24orderby=pubdate att=2}dt[field:textlink/] span[field:description/]…/span/dt{/dede:arclist}
最新文章调用标签:{dede:arclist row=8titlelen=24orderby=pubdate}li[field:textlink/]/li{/dede:arclist}
热关键字调用标签:{dede:hotwords num=''''5''''subday=''''30''''/}
最新图文调用标签:{dede:arclist row=4titlelen=20orderby=pubdate type=''''image.''''imgwidth=''''152''''imgheight=''''98''''} dd ahref="[field:arcurl/]"img src="[field:picname/]"alt="[field:title/]"/a span atitle="[field:title function=''''htmlspecialchars(@me)''''/]"href="[field:arcurl/]"[field:title/]/a/span/dd{/dede:arclist}
推荐文档调用标签:{dede:arclist type=''''commend''''titlelen=''''40''''row=''''10''''}li atitle="[field:title function=''''htmlspecialchars(@me)''''/]"href="[field:arcurl/]"[field:title/]/a/li{/dede:arclist}
随机保举调用标签:{dede:arclist type=''''commend''''titlelen=''''26''''orderby=''''rand''''row=''''10''''}li atitle="[field:t itle function=''''htmlspecialchars(@me)''''/]"href="[field:arcurl/]"[field:title/]/a/li{/dede:arclist}
热点文档调用标签:{dede:arclist orderby=''''click''''titlelen=''''40''''row=''''10''''}li atitle="[field:title function=''''htmlspecialchars(@me)''''/]"href="[field:arcurl/]"[field:title/]/a/li{/dede:arclist}
相关文档调用标签:{dede:likeart titlelen=''''24''''row=''''10''''}li atitle="[field:title function=''''htmlspecialchars(@me)''''/]"href="[field:arcurl/]"[field:title/]/a/li{/dede:likeart}
调用图片链接标志:a href="[field:arcurl/]"img src="[field:picname/]"alt="[field:title/]"/a ahref=''''[field:arcurl/]''''[field:image/]/a
调用文字链接标志:a href="[field:aucurl/]"title="[field:title/]"[field:title/]/a atitle="[field:title function=''''htmlspecialchars(@me)''''/]"href="[field:arcurl/]"[field:title/]/a
节制字数描述标志:[field:description function="cn_substr(@me,100)"/]
调用文章tags标志:{dede:tag type=''''current''''/}
文章关键字与描述:{dede:field name=''''keywords''''/} {dede:field name=''''description''''func tion=''''html2text(@me)''''/}
栏目内容:{dede:field name=''''description''''function=''''html2text(@me)''''/}
调用外部htm文件:{dede:include file=''''head.htm''''ismake=''''yes''''/}
搜索文章调用标签:{dede:global name=''''keyword''''/}"的搜索结果-{dede:global name=''''cfg_webname''''/}搜索"{dede:global name=''''keyword''''/}/span"的结果
递增序列号:[field:global name=autoindex/]
调用缩略图:img src=''''{dede:field name="litpic"/}''''
列表隔5行加一行线:
{dede:list pagesize=''''50''''} LI ahref="[field:arcurl/]"title="[field:title function=''''htmlspecialchars(@me)''''/]" target=_blank[field:title function="cn_substr(@me,48)"/]/a[field:pubdate runphp=''''yes''''] $a="font color=red".strftime(''''m-d'''',@me)."/font"; $b=strftime(''''m-d'''',@me); $ntime=time(); $day3=3600*24; if(($ntime-@me)$day3)@me=$a; else@me=$b; [/field:pubdate]br [field:global name=autoindex runphp="yes"] if(@me5==0)@me="hr/"; else@me=""; [/field:global] {/dede:list}
最新文章列表"隔行换色"的方法:
{dede:arclist orderby=pubdate titlelen=''''26''''row=''''10''''} [field:global runphp=''''yes''''name=autoindex] $a="div id=''''a''''"; $b="div id=''''b''''"; if((@me2)==0)@me=$a; else@me=$b; [/field:global] ul li[field:title/]/li /ul /div {/dede:arclist}
24小时内更新的文章时间显示为红色:
[field:pubdate runphp=''''yes''''] $a="font color=red".strftime(''''m-d'''',@me)."/font"; $b=strftime(''''m-d'''',@me); $ntime=time(); $day3=3600*24; if(($ntime-@me)$day3)@me=$a; else@me=$b; [/field:pubdate]
COPY页面内容,自动在后面加上网站信息,利于SEO:
script type="text/javascript" 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)} /script
按时间点击文章长幼次序榜调用标签:
按总:{dede:arclist row=''''24''''titlelen=24orderby=click} 按月:{dede:arclist row=''''24''''titlelen=8orderby=click subday=30} 按周:{dede:arclist row=''''24''''titlelen=8orderby=click subday=7}
在首页调用某栏目的子栏目 {dede:channel type=''''sun''''typeid=''''栏目ID''''} a href="[field:typelink/]"[field:typename/]/a {/dede:channel} 或者 {dede:global name=''''maplist''''/}
搜索表枯燥用标签:form action="{dede:global name=''''cfg_phpurl''''/}/search.php"name="formsearch" input type="hellodden"name="kwtype"value="1"/ input name="keyword"id="keyword"type="text"class="searchtxt"/ select name="searchtype"id="searchtype" option value="titlekeyword"selected智能模糊搜索/option option value="title"仅搜索标题/option /select input type="image"src="{dede:field name=''''templeturl''''/}/images/topsearch_submit.gif"/ /form -- 实现"文章标题-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''''/} -- 发布的文章显示红色日期或加上new字或new小图片 给近三天(或当天)发布的文章显示红色日期或加上new字或new小图片等。 都是围绕pubdate做文章,写扩展的。 第2、3要注意的问题是:如:"img src=''''new.gif''''/中不能用双引号,不然不行。 如果要给当天的加,把3600*24*3改为3600*24便可。 1、==红色的日期== [field:pubdate runphp=''''yes''''] $a="font color=red".strftime(''''m-d'''',@me)."/font"; $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="font color=''''red''''(new)/font"; 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="img src=''''new.gif''''/".$aa; else@me=$aa; [/field:pubdate] -- 一种很酷的时间效果 [field:pubdate runphp="yes"] if((time()-@me)(60*60*24)){@me=''''font color="#ff6600"''''.strftime("H:M",@me).''''/FONT'''';} else{@me=strftime("m-d",@me);} [/field:pubdate] -- DEDE seo小技巧加个百度搜索本篇文章 【a href="javascript:"onclick=''''window.open("name="title"/}&q2=&q3=&q4=&rn=10&lm=0&ct=1&ft=&q5=&q6=你的网址")''''target="_top"title="在百度搜索"{dede:field name="title"/}"相关内容"font color=red在百度搜索更多繁体字/font/a】 把你的网址改一下,不加http,演示:文章页 或者 【a href="javascript:"onclick=''''window.open("name="title"/}")''''target="_top"title="在百度搜索"{dede:field name="title"/}"相关内容"font color=red搜索舞步/font/a】 -- 调用tag:{dede:field name=''''keywords''''runphp=''''yes''''} if(!empty(@me)){ $kws=explode('''''''',@me); @me=""; foreach($kws as$k){ @me.="a href=''''/tag.php?/$k/''''$k/a"; } @me=str_replace('''' '''','''''''',trim(@me)); } {/dede:field} -- 真正采集热门Tags,按F5一次变换一次 模型板代码: {dede:tag row=''''10''''sort=''''month''''} ahref=''''[field:link/]''''[field:tagname/]/a {/dede:tag} script language="javascript" !-- var tag_a=document.geTELementsByTagName("a"); for(i in tag_a){ var offset=6; var num=4; if(tag_a.className=="tag"){ var rnd=Math.ceil((num offset)*Math.random()); if(rnd offset){ tag_a.className="tag" (rnd-offset); } } } //-- /script CSS代码: .tag1{color:#339900;font-weight:bold;} .tag2{color:#e65730;} .tag3{color:#00b9da;} .tag4{color:#FE3981;font-weight:bold;font-size:14px;} 更换标签方式: 默许调用的是当月热门标签,如果换想其他的可以: -- 最新标签 {dede:tag row=''''30''''sort=''''new''''}a href=''''[field:link/]''''[field:helloghlight/]([field:result/])/a{/dede:tag} -- 当月热门标签 {dede:tag row=''''30''''sort=''''month''''}a href=''''[field:link/]''''[field:tagname/]([field:result/])/a {/dede:tag} -- 随机标签 {dede:tag row=''''60''''sort=''''rand''''}a href=''''[field:link/]''''[field:helloghlight/]([field:result/])/a{/dede:tag} -- 任何体系页面调用会员积分长幼次序: {dede:sql sql="Select id,userid,uname,scores From dede_member order by scores desc limit 0,10"} dd spana href=''''[field:global name=''''cfg_cmspath''''/]/member*[field:userid/]/''''[field:uname/]/a /span span积分[field:scores/]/span/dd {/dede:sql} -- !--问答体系--调用 {dede:ask row=''''10''''} li span[a href="[field:typeurl/]"[field:tidname/]/a]/span spana href="[field:url/]"[field:title/]/a/span /li {/dede:ask} -- 企业调用 {dede:sql sql="SELECT m.ID,m.type,m.userid,m.matt,c.id,c.comname FROM dede_member m left join dede_member_cominfo con m.ID=c.id where m.type=1and m.matt=1 LIMIT 0,10"} dd spana href=''''[field:global name=''''cfg_cmspath''''/]/member*[field:userid/]/''''[field:comname/]/a /span/dd {/dede:sql} -- 专题调用 {dede:arclist row=10orderby=rand type=''''spec.''''} li ahref="[field:filename function=''''str_replace("index.html","",@me)''''/]"target="_blank"STRONG[field:title function=''''(strlen("@me")16?cn_substr("@me",16):"@me")''''/] /STRONG/a/li {/dede:arclist} -- 列表页调用TAG标签的两种方法 dedecms默许在列表是没有办法调用tag标签的,经过各位版主们的帮助,现给各人提供出种方法 方法1: 在列表需要的位置加入下列代码 [field:id runphp=yes] $tsql=new DedeSql(false); $tags=''''''''; $tsql-SetQuery("Select i.tagname From dede_tag_list tleft join dede_tag_index ion i.id=t.tid where t.aid=''''@me''''"); $tsql-Execute(''''t''''); whellole($row=$tsql-GetArray(''''t'''',MYSQL_ASSOC)){ $tags.="a href=''''/tag.php?/".urlencode($row[''''tagname''''])."''''".$row[''''tagname'''']."/a"; } @me=$tags; [/field:id] 方法2: 在inc_functions.php文件里加入 function listtag($aid){ $tsql=new DedeSql(false); $tags=''''''''; $tsql-SetQuery("Select i.tagname From dede_tag_list tleft join dede_tag_index ion i.id=t.tid where t.aid=''''$aid''''"); $tsql-Execute(''''t''''); whellole($row=$tsql-GetArray(''''t'''',MYSQL_ASSOC)){ $tags.="a href=''''/tag.php?/".urlencode($row[''''tagname''''])."''''".$row[''''tagname'''']."/a"; } return$tags; } 然后在列表页响应位置加入 [field:ID function="listtag(@me)"/]标志 -- {dede:arclist typeid=''''''''row=''''''''col=''''''''titlelen=''''''''infolen='''''''' imgwidth=''''''''imgheight=''''''''listtype=''''''''orderby=''''''''keyword=''''''''} {/dede:arclist} {dede:arclist typeid='' row='' col='' titlelen='' infolen='' imgwidth='' imgheight='' listtype='' orderby='' keyword=''} 去除html [field:title function='htmlspecialchars(@me)'/] 主要使用在FLASH以及<a>中,是为了去除标签中的HTML元素,比如<b></b>等,如果不使用此标签,则会导致HTML代码显示在页面中。 使用方法: <a title="[field:title function='htmlspecialchars(@me)'/] " href="[field:arcurl /]">[field:title /]</a>或者 <a href="[field:arcurl /]" ><img src='[field:litpic/]' alt="[field:title function='htmlspecialchars(@me)'/]" border='0' width='' height=''></a> 图片标签代码: 1、 <a href='[field:arcurl /]'><img src='[field:litpic/]' border='0' width='' height=''></a> 2、 [field:imglink /] 3、<a href='[field:arcurl /]'>[field:image/]</a> [field:imglink /]与<a href='[field:arcurl /]'>[field:image/]</a> 是完全等价的,只不过后者更灵活一点,可以在 <a>中添加 title="";即<a href='[field:arcurl /]' title="[field:title function='htmlspecialchars(@me)'/] ">[field:image/]</a> <a href='[field:arcurl /]'><img src='[field:litpic/]' border='0' width='' height=''></a>则更为灵活,不仅可以添加title="",还可以添加 alt="",虽然灵活,但是缺少对图片的宽度和高度的控制,所以要在CSS中控制图片的大小,适合对CSS有一点了解的人。 栏目标签代码: 1、<a href='[field:typeurl /]'>[field:typename /]</a> 2、[field:typelink /] 二者是相等的,只不过是前者更灵活一点 连接标签代码: 1、 <a href='[field:arcurl /]'>[field:title /]</a> 2、[field:textlink /] 两者是相等的,前者比后者更灵活,可以增加titie="" 在这里应该注意的是,title长度的问题,Dedecms数据库中最大长度为80字节,40汉字宽度,另外,arclist标签里面如果不设置titlelen的值,则默认取值为30字符,15汉字宽度;所以除了在使用titlelen控制标题长度,还可以使用另外一种方法来控制标题长度,即,设置titlelen="80" <a href="[field:arcurl /]" title="[field:title function='htmlspecialchars(@me)'/]">[field:title function="cn_substr(@me,40)"/]</a> 这种格式的好处是,title=""中为完整标题,即鼠标停留显示完整标题,function="cn_substr(@me,40)"作用是截取40字符宽度,20汉宽度。 点击标签代码:[field:click/] [field:click runphp="yes"] if(@me>1000)@me='<font color="#ff0000">@me</font>'; else @me=@me; [/field:click] 上述代码表示,超过1000点击的,显示红色 简介标签代码: 1、[field:info /] 2、[field:description /] 这两种是一样的,简介长度有两种控制方式,一种是infolen="" 控制,如果infolen无参数,则默认为250;另外一种是使用function="cn_substr(@me,120)"控制,120为所取字符宽度;[field:info function="cn_substr(@me,120)"/]或[field:description function="cn_substr(@me,120)"/] 日期标签代码:[field:pubdate /] [field:pubdate runphp="yes"] if((time()-@me)<(60*60*24)){@me=' <font color="#ff6600">'.strftime("%H:%M",@me).'</FONT>';} else {@me=strftime("%m-%d",@me);} [/field:pubdate] 或者 [field:pubdate runphp="yes"] if((time()-@me)<(60*60*24)){@me=' <font color="#ff6600">'.strftime("%m-%d",@me).'</FONT>';} else {@me=strftime("%m-%d",@me);} [/field:pubdate] 效果是,24内发布的文章,其日期显示红色。 时间与日期的参数: %a 星期几的缩写。 %A 星期几的全名。 %b 月份名称的缩写。 %B 月份名称的全名。 %c 本地端日期时间较佳表示字符串。 %d 用数字表示本月的第几天 (范围为 00 至 31)。 %H 用 24 小时制数字表示小时数 (范围为 00 至 23)。 %I 用 12 小时制数字表示小时数 (范围为 01 至 12)。 %j 以数字表示当年度的第几天 (范围为 001 至 366)。 %m 月份的数字 (范围由 1 至 12)。 %M 分钟。 %p 以 'AM' 或 'PM' 表示本地端时间。 %S 秒数。 %U 数字表示为本年度的第几周,第一个星期由第一个周日开始。 %W 数字表示为本年度的第几周,第一个星期由第一个周一开始。 %w 用数字表示本周的第几天 ( 0 为周日)。 %x 不含时间的日期表示法。 %X 不含日期的时间表示法。 %y 二位数字表示年份 (范围由 00 至 99)。 %Y 完整的年份数字表示,即四位数。 %Z 时区或名称缩写。 %% % 字符。 [field:pubdate function='strftime("%Y-%m-%d %H:%M:%S",@me)'/] 效果:2009-05-23 13:11:52 [field:pubdate function='strftime("%y-%m-%d %H:%M:%S",@me)'/] 效果:09-05-23 13:11:52 [field:pubdate function='strftime("%m-%d %H:%M:%S",@me)'/] 效果:05-23 13:11:52 [field:pubdate function='strftime("%m-%d %H:%M",@me)'/] 效果:05-23 13:11 [field:pubdate function='strftime("%y-%m-%d",@me)'/] 效果:09-05-23 [field:pubdate function='strftime("%y年%m月%d日",@me)'/] 效果:09年05月23日 [field:pubdate function='strftime("%Y年%m月%d日 %H点%M分%S秒",@me)'/] 效果:2009年05月23日 13点11分52秒 [field:pubdate function='strftime("%b %d, %Y",@me)'/] 效果:May 23, 2009 [field:pubdate function='strftime("%A on %b %d, %Y, %X : %Z",@me)'/] 效果:Saturday on May 23, 2009, 13:11:52 : 中国标准时间 {/dede:arclist} 1:排列LI <li><a href="" target="_blank">[栏目]</a> <a href="" title="挑剔">标题</a></li> {dede:arclist typeid="" row='12' col='' titlelen='80' type='' orderby='' } <li><a href="[field:typeurl /]" target="_blank">[[field:typename /]]</a> <a href="[field:arcurl /]" title="[field:title function='htmlspecialchars(@me)'/]">[field:title function="cn_substr(@me,20)"/]</a></li> {/dede:arclist} PS:隔行不同色为背景图 2 {dede:arclist typeid="11" row='7' col='' titlelen='80' type='' orderby='' } <li>·<a href="[field:arcurl /]" title="[field:title function='htmlspecialchars(@me)'/]">[field:title function="cn_substr(@me,44)"/]</a> </li> {/dede:arclist}