寂寞天涯的教程织梦dedecms 自己制作标签教程
DedeCms的Mytag 标记
今天来介绍下自定义宏标记的应用,大家可以进入后台,在“模板管理”-》“自定义宏标记”中查看到该选项。
自定义宏标记的作用:可以将模板中多次出现的相同元素用一个自定义标记表示出来,从而达到,一次更改,全局更换的效果。
辅助插件的广告管理也有相似的效果。
适用范围:网页模板中多次出现的相同元素,例如:网站的导航条、网站的站点公告、网站的底部信息等,在我之前发布的几套模板中都运用到了自定义宏标记。
自定义宏标记的调用办法:{dede:mytag name='标记名称' ismake='是否含板块代码(yes 或no)' typeid='栏目ID'/}1、name 标记名称,该项是必须的属性,以下2、3是可选属性;2、ismake 默认是no 表示设定的纯HTML代码,yes 表示含板块标记的代码;3、typeid 表示所属栏目的ID,默认为0 ,表示所有栏目通用的显示内容,在列表和文档模板中,typeid默认是这个列表或文档本身的栏目ID。
下面来通过一个实例进行说明:我有一个网站模板底部信息,其长度已经超出了系统可以设置的网站版权(cfg_powerby)的长度,但是我想实现一段代码,可以在不同模板(页面)中显示相同内容的效果。
我们就可以使用自定义宏标记来实现这个效果如图进行设置:然后我们回到模板制作的界面,将模板中的{dede:global name='cfg_powerby'/},替换为我们设置的自定义宏标记:{dede:mytag name='footer'/},更新下,是不是已经变为我们设置的标记内容了啊。
当然,自定义宏标记里面也可以加入dedecms的标记内容,适合当前栏目的显示内容,不过需要在调用代码中将ismake设为yes才可以,也可以通过设置typeid使自定义宏标记在特定栏目中显示。
有人会问,我已经生成了很多页面了,现在想更改了一下自定义宏标记的内容,那岂不是要更改后重新再生成一遍,那样就不方便了。
一个完整的网站制作dedecms标签
1、网页头部标题Index页面标题<title> {dede:global.cfg_webname/} </title>子页页面标题<title> {dede:field.title/}_{dede:global.cfg_webname/} </title>2、导航栏‘首页’项href 的织梦标签<a href=" {dede:global.cfg_webnameurl/} /cms " > //cms 在后台系统设置里面找到3、面包屑导航代码:<span class="fr prp">当前位置:{dede:field name='position'/} </span>4、CSS 引用织梦内部相对路径<link href=" {dede:global.cfg_templets_skin/}/ css/common.css" rel="stylesheet" type="text/css" />其中{dede:global.cfg_templets_skin/}/为织梦定义的内部样式相对路径需添加在相应位置5、img 的相对路径<img src="{dede:global.cfg_templets_skin/}/images/img_banner1.png"alt="实验室搅拌器荣获国家三一产品" />其中dede:global.cfg_templets_skin/}/ 为织梦内部定义的网页中图片的相对路径需添加在每一个图片前面可以在dreamweaver 中用ctrl+ F 然后进行全部替换6、头部、底部制作成单独的页面时的引用语句{dede: include filename="head.html" /}当把页面头部、底部制作成单独的页面时可以把它们添加到别的网页相应位置已达到多次的调用7、导航栏的循环输出与最后一个项目的后面竖线的消除{dede:channel type='top' }<li [field:global name='autoindex' runphp='yes'] if (@me==6){ @me= 'class="lineNone" ';}else{@me='';}[/field:global]><a href="[field:typeurl/]" title="[field:typename/]">[field:typename/]</a>{/dede:channel}其中A{dede:channel type='top' }与{/dede:channel}成对出现用来表示导航条然后进行一次循环输出每一项其中需type = top 表示是顶级导航条B <a href="[field:typeurl/]" title="[field:typename/]">[field:typename/]</a>[field:typeurl/] 表示为每一项导航条索对应的链接位置[field:typename/] 表示为每一项导航条的名字C [field:global name='autoindex' runphp='yes'] if (@me==6){ @me='class="lineNone" ';}else{ @me ='';}[/field:global] 表示为导航条最后一项右边多出一个竖线进行判断然后引用CSS样式linenone 取消竖线8、首页中每一块的显示标签arclist{dede:arclist titlelen=42 row=5 typeid='13' }<!-- row=5 typeid='13'必须写说明调用的位置--> <li> <a href="[field:arcurl/]" title="[field:title/]">[field:title/]</a><span class="fr">[[field:pubdate function="MyDate('m-d',@me)"/]] </span> </li>{/dede:arclist}typeid='13' 说明该块所属的导航栏属于哪一项必须填写9、关于客户案例最下面一条信息底部多出一条细线的解决办法代码:{dede:arclist typeid='5' row='2' titlelen = '10' infolen='20'}<li [field:global name='autoindex' runphp='yes']if(@me==2){@me=" class='borderNone'";}else{@me='';}[/field:global]> // 此处为解决多出的一条线的方法<a href="[field:arcurl/]" class="fl" title=""><img src="[field:litpic/]" width="116" height="80" alt="" /></a><p class="fr"> <strong><a href="[field:arcurl/]"> [field:title/]...</a></strong><br />[field:description function='cn_substr(@me,80)'/] // 解决内容的现实字数问题</p><div class="cl"></div></li>{/dede:arclist}10、文章详细页列表页下面的内容分篇效果代码:<div class="dede_pages"><ul class="pagelist">{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="2"/} </ul><div class="cl"></div></div>【织梦代码】{dede:pagelist listitem="info,index,end,pre,next,pageno" listsize="2"/}CSS样式:.dede_pages{text-align:center;}.dede_pages ul{float:left;padding:12px 0px 12px 16px;}.dede_pages ul li{float:left;font-family:Tahoma;line-height:17px;margin-right:6px;border:1px solid #E9E9E9;padding:2px 4px 2px;}.dede_pages ul li a{float:left;/*padding:2px 4px 2px;*/color:#555;display:block;}.dede_pages ul li a:hover{color:#690;text-decoration:none;/*padding:2px 4px 2px;*/}.dede_pages ul li.thisclass,.dede_pages ul li.thisclass a,.pagebox ul li.thisclass a:hover{background-color:#F8F8F8;padding:2px 4px 2px;font-weight:bold;}.dede_pages .pageinfo{/*line-height:21px;padding:12px 10px 12px 16px;*/color:#999;}.dede_pages .pageinfo strong{color:#555;font-weight:normal;margin:0px 2px;}11、文章详细页下面的分篇效果代码:<div class="pages"><p>{dede:prenext get='pre'/}</p> //上一页织梦专用代码<hr/><p>{dede:prenext get='next'/}</p> //下一页织梦专用代码</div>CSS样式代码:.pages { margin:20px 10px;}.pages p{ margin-left:0; font-size:14px;}12、文章列表效果代码:<div class="pagenewsList"><ul>{dede:list pagesize=4 } // pagesize=4 含义是一个页面上出现4条新闻如上所示<li><p><a href="[field:arcurl/]">[field:title/]</a><span class="fr">[[field:pubdate function="MyDate('Y-m-d',@me)"/]]</span></p>//[field:title/] 表示新闻内容span中包含的是新闻右端的时间</li>{/dede:list}</ul><div class="cl"></div></div>CSS样式:.pagenewsList ul li { line-height:30px; border-bottom:1px dotted #666; background:url(../images/icon_pageLeft.png) no-repeat left center; padding-left:18px;} //background 表示的是新闻左端的小图标li 的背景的形式出现.pagenewsList ul li p span{ padding-right:10px;}13、针对栏目“关于我们”是单页面进行如下设置:注意:单页页面高级选项里面只需设置封面模板即可单页里面的内容一般不会改动所以添加在栏目内容(源码)中然后在页面中相应位置调用用代码{dede:field.content/}即可14、建立“在线留言”栏目所需的表单A 登陆后台核心→频道模型→自定义表单→增加新的自定义表单→自定义表单名称→确定B 选中刚才建立的表单管理选框里面的更改添加新字段然后表单提示文字:/字段名称:/数据类型:/默认值: 依次填写最后确定这样建好一个字段仿照上面再次建立别的字段C 建好字段之后点击确定然后里面点击前台预览此时会生成一个页面D 页面生成后点击右上角发布信息会出现所建立的所有字段E 然后查看网页源代码找到整个表单的代码复制到相应的模板的表单位置即可15、网页底部的友情链接的更改把代码<ul><li><a href=" /">河南做网站</a></li><li><a href="/">郑州做网站</a></li> ......... 后面有若干个<li> 。
DedeCMS V5.3 模板标签参考手册
DedeCMS V5.3 模板标签参考手册
来源:织梦官方作者:admin发表于:2009-09-29 12:24点击:10001
DedeCMS V5.3 常用问题手册发布这里天涯收集了用户在论坛或者QQ中的一些问题,总共分为概念篇、安装篇、升级篇、整合篇、使用篇、销售篇、其他类几个部分,每个部分选了用户常见的一些使用问题,将其打包为CHM文件,提供大家下载阅读,并且手册会以后进行
DedeCMS V5.3 模板标签参考手册发布
这是DedeCMS V5.3版本的标签手册,手册方便用户制作模板、学习系统所编写,之前在织梦的帮助中心有相关的标签内容,这里我将其整理并且重新进行了一些编辑,为了方便大家使用,讲内容大包为CHM格式,手册含有基本的标签说明、相关二次开发函数,并且列举了标签常用使用的几个说明。
手册将不断更新整理内容,希望大家在标签方面有什么好的想法即时同我取得联系,可以发送到邮箱[url=mailto:tianya@]tianya@[/url] 中。
DEDE一些实用标签及自定义标签方法
DEDE一些实用标签及自定义标签方法栏目首页:取得当前栏目的id {dede:field name='id'/}当前栏目名称: {dede:field name='typename'/}栏目列表页:取得当前栏目的id {dede:field name='id'/}当前栏目名称: {dede:field name='typename'/}文章内容页:取得当前文章的id: {dede:field name='id'/}当前文章所属栏目名称: {dede:field name='typename'/}其它标签:用于循环和遍历中的计数器(每次+1): [field:global name=autoindex/]将中文截取指定字节数: [field:title function='cn_substr(@me,16)'/]{dede:sql}标签:sql标签可以称得上是个万能标签了,查询数据库将其输出:1.用来输出统计内容,这个是不错的,举个例子,我们来统计下总共发了多少的文章,思路就是输出dede_addonarticle这个文章附加表内容总数就可以了。
{dede:sql sql="SELECT COUNT(*) AS nums FROM dede_add onarticle"}[field:name = "nums"/]{/dede:sql}2.使用~field~来进行特殊的查询,比如之前论坛上面很多会员需要做一个输出当前发布文章会员的相关内容,之前用sql或者arclist 标签是没办法实现的,因为每篇内容是不同的,这里我们来用5.5的sql语句来做个示范。
我们首先在文章模板中相应的位置加上下面的标签{dede:sql sql="SELECT * FROM dede_archives WHERE writer =~writer~"}[field:id/],{/dede:sql}这个放到article_article.htm页面,将会检索出当前会员发布的相关文章,这里的~ writer~会根据当前内容的环境变量进行替换后再执行查询。
织梦dedecms淘宝客3.1模板标签教程说明
织梦dedecms淘宝客3.1模板标签教程说明简介:[默认模板目录] \templates\default [模板文件] 1.index.htm 网站首页2.item-list.htm 商品列表页3.item-view.htm 商品内容页[模板标签] channellist 淘宝频道名称调用标签--------------------------------- 使用范围:全局功能:调用淘宝频道列表参数:默认模板目录]\templates\default[模板文件]1.index.htm 网站首页2.item-list.htm 商品列表页3.item-view.htm 商品内容页[模板标签]channellist 淘宝频道名称调用标签---------------------------------使用范围:全局功能:调用淘宝频道列表参数:cid=$cfg_nav_iterms需要调用的淘宝cid系统默认配置$cfg_nav_iterms中为50014851,50014852,50014854,50010686,50014927,5000385,可自行更改row=8显示的行数,默认为8行示例:{dede:channellist row=8}<a href="{dede:field.channelurl/}">{dede:/}</a><br />{/dede:channellist}底层字段:channelurl:频道列表name:栏目标题cid:淘宝频道ID(淘宝)parent_cid:父级频道id(淘宝)----------------------------------------------------------------------------------------------------------itemlist 淘宝商品列表调用标签------------------------------使用范围:全局功能:可以调用一个自定义排序筛选的列表参数:num_iids=特定商品id的信息cid=淘宝类目cidrow=8显示行数keyword=搜索关键词,例如:phparea=商品所在地,例如:江苏orderby=commissionRate_asc显示排序,默认排序:default price_desc(价格从高到低) price_asc(价格从低到高) credit_desc(信用等级从高到低) commissionRate_desc(佣金比率从高到底) commissionRate_asc(佣金比率从低到高) commissionNum_desc(成交量成高到低) commissionNum_asc(成交量从低到高) commissionVolume_desc(总支出佣金从高到底) commissionVolume_asc(总支出佣金从低到高) delistTime_desc(商品下架时间从高到底) delistTime_asc(商品下架时间从低到高) cres=5卖家起始信誉卖家信用: 1heart(一心) 2heart (两心) 3heart(三心) 4heart(四心) 5heart(五心) 1diamond(一钻) 2diamond(两钻) 3diamond(三钻) 4diamond(四钻) 5diamond(五钻) 1crown(一冠) 2crown(两冠) 3crown(三冠) 4crown(四冠) 5crown(五冠) 1goldencrown(一黄冠) 2goldencrown(二黄冠) 3goldencrown(三黄冠) 4goldencrown(四黄冠) 5goldencrown(五黄冠)cred=15卖家结束信用ps=商品价格区间开始pd=商品价格区间结束crs=商品佣金比率开始crd=商品佣金比率结束cns=商品推广个数开始cnd=商品推广个数结束示例:{dede:itemlist}<a href="{dede:field.arcurl/}">{dede:field.title/}</a><br />{/dede:itemlist}底层字段:arcurl(本站地址连接),其他底层字段参考:/a/api/api-getproductlist/中返回结果字段说明.如果使用num_iids属性,则其他属性无效,调用字段的底层标记参考:/a/api/api-productitemsconvert/----------------------------------------------------------------------------------------------------------datalist 列表页显示数据标签------------------------------使用范围:列表页功能:用于展示一个数据列表参数:pagesize=20数据显示条数示例:{dede:datalist pagesize=20}<p><a href="{dede:field.arcurl/}">{dede:field.title/}</a></p>{/dede:datalist}<p>{dede:pagelist/}</p>底层字段:arcurl(本站地址连接),其他底层字段参考:/a/api/api-getproductlist/中返回结果字段说明----------------------------------------------------------------------------------------------------------pagelist 列表页分页标签------------------------------使用范围:列表页功能:用于展示一个数据列表参数:无示例:{dede:datalist pagesize=20}<p><a href="{dede:field.arcurl/}">{dede:field.title/}</a></p>{/dede:datalist}<p>{dede:pagelist/}</p>底层字段:无[特殊用法]1.标签嵌套channellist和itemlist标签嵌套使用,能够生成一组商品数据示例:{dede:channellist par=cid}{dede:/}<br />{dede:itemlist}<a href="{dede:field.arcurl/}">{dede:field.title/}</a><br />{/dede:itemlist}<hr/>{/dede:channellist}这里注意嵌套属性par=cid,在子级标签中可以动态调用父级cid的元素2.内容页支持标签内容页使用/a/api/api-getitemdetail/接口获取数据,在内容页模板(item-view.htm)中直接使用{dede:var.底层变量名称/}来获取对应变量,例如获取标题,使用{dede:var.title /}即可.这里我们特殊处理了2个变量:{dede:var.shorturl /} 商品短地址URL{dede:var.shortshopurl/} 商铺短地址URL,这两个url解析后的基本地址为:http://站点名称/?ct--plus--ac--short--num_iid--*******这样的地址比淘宝推广地址/t_8?e=7HZ6*******56vKutsD4QDIR1GZtSxmOMPl5xxpQsxAFurra3Fc6g LjL5wEFvMtQzdhqws3kbOyM%2BTr7yYTiUuQ&p=mm_17444354_0_0&n=19&u=12102579de1000 7简短些.3.itemlist标签使用itemlist标签的说明除了参考手册之外,这里给出了几种特殊的itemlist标签用法:(1)调用特定产品内容{dede:itemlist num_iids='8629022725,6001334421,7801987917'}<a href="{dede:field.arcurl/}">{dede:field.title/}</a><br />{/dede:itemlist}调用num_iid为8629022725和6001334421以及780198791的商品(2)嵌套标记(见上)4.获取搜索地址如果需要获取一个检索地址,例如搜索:dedecms,可以用系统提供的GetSearchUrl()函数,例如,我们需要获取一个类目为关键词的检索信息,只需要用下面的标签:{dede:channellist}<a href="{dede: function='GetSearchUrl(@me)'/}">{dede:/}</a><br />{/dede:channellist}。
DedeCMSV5.7标签手册
{dede:booklist row='12' booktype='-1' orderby='lastpost' author='' keyword=''} <a href='[field:bookurl /]'>[field:bookname /]</a><br /> {/dede:booklist}
基本语法
{dede:group row='6' orderby='threads' titlelen='30'} <li> <span><img style="visibility: inherit;" title="[field:groupname/]" src="[field:icon/]" /></span > <span><a href="[field:url/]" title="[field:groupname/]" target="_blank">[field:groupname/]</a> </span> </li> {/dede:group}
基本语法
{dede:feedback} <ul> <li class='fbtitle'>[field:username function="(@me=='guest' ? '游客' : @me)"/] 对 [field:titl e/] 的评论:</li> <li class='fbmsg'> <a href="plus/feedback.php?aid=[field:aid/]" class='fbmsg'>[field:msg /]</a> </li> </ul> {/dede:feedback}
DedeCMS模板制作使用实例教程
作为DedeCMS使用者,第一次写模板方面的教程,我侧重方法的介绍,下面,我以问题的形式由浅入深展开。
说得不对的地方请指出,但不要骂人,本人非计算机专业人士,写教程纯属爱好,并为DedeCMS出点力。
第一次由自己一字一句写的主页模板,终于完成了.网址如下:】/等本贴达到100回帖时将主页模板共享出来,等较空闲时,再写一篇教程,完整说明是如何制作主页模板,敬请期待!1、怎样调用数据?DedeCMS是大型的动态网站程序,其数据主要在存储在数据库中的,做模板就必须知道,数据是如何从数据库读取并展示在大家面前的。
官方写了很多程序,将数据的提取过程变得相当简单。
大家只要懂得调用适当的"DedeCMS标记"就可以调取相应的数据。
调用"DedeCMS标记"的三种代码样式:A、{dede:标记名称属性='值'/}B、{dede:标记名称属性='值'}{/dede:标记名称}C、{dede:标记名称属性='值'}自定义样式模板(InnerT ext){/dede:标记名称}详细的说明参阅官方文件:/archives/templethelp/help/index.htm。
使用时可随时查阅该文档。
我自己想出了一种方法来加深认识,并通过实例调试这些标签,这样认识就比其它人更深一层次。
具体方法是:将templets\default\文件夹下的index.html文件代码,全部掏空。
放入自己想要调试的标签,再在IE中访问网站主页index.php,就可以得到返回的数据。
比如:a、放入标签{dede:global name="cfg_webname" /}就得到了“网站名称”b、放入标签{dede:artlist typeid='' row=5}[field:title/]<br />{/dede:artlist}就返回5篇文章的标题。
Dedecms标记入门(新手必读的模板教程)
Dedecms标记入门(新手必读的模板教程)Dedecms新版本(V5系列)模板标记非常灵活,对于很多新人是一个头疼的问题,天涯今天就来和大家谈谈这些标记,为以后大家修改、制作模板打下扎实基础。
首先我们去官方的《模板制作帮助文档》查看这些标记的简介,如何来看帮助文档呢,下面天涯就来简单的说一下,我们拿最常用的Arclist标记来做说明。
帮助文档中都有【功能说明】【适用范围】【基本语法】【属性说明】这些部分组成,【功能说明】用于解释模板标记使用功能,建议新手都把这些标记功能看看,大致做一个了解。
【适用范围】由于Dedecms模板大致分为首页、频道、列表、内容以及其他附加模板组成,使用范围指出这些标记在哪些模板中起作用。
模板文件夹中(以Dedecms默认模板为例,即{cmspath}\templets\default)大家可以仔细分析下,模版中很多都是以下列这些名字出现index.htm,index_X.htm(封面模板),list_X.htm(列表模板),article_X.htm(内容模板),你可以对照标记的适用范围,查看这些标签在哪个模板中能起到作用。
【基本语法】用于介绍模板基本使用方法,在使用时候可以拿来根据自己的需要进行响应的修改。
【属性说明】这些属性,决定你调用的内容,决定Dedecms解析这些标记的形式,属性非常重要。
以上这些介绍主要是让大多数新手学会看帮助文件,模板修改使用的大多数问题都是因为自己不去看这些帮助文件导致的,希望广大Dedecms新人引以为戒。
下面就来简单说下Dedecms模板的分类,搞过ASP的人应该知道,动态网页基本上就是对变量、数组(数据库)的操作,然后通过语句输出为HTML,dedecms的这些标记也是起到同样的效果。
下面根据起到的不同效果对模板进行如下分类:一.变量操作型这里的变量不同于对编程中那个复杂的变量,新人不懂,我这里所指出的变量是Dedecms调用局部内容进行输出的一些标记,这里有:【Flink (friendlink)标记】【Page 标记】【Pagelist 标记】【Pagebreak 标记】【Prenext 标记】【Pagetitle 标记】【Myad 标记】【Vote 标记】以及还有系统不常用的(其实天涯经常使用),例如global标记、include标记、mytag标记、position 标记,这些标记大家可以看出,都是输出来为一部分内容,并不可以重复,这个标记在解析时候生成的只是一块不重复的内容。
织梦标签
{dede:global.cfg_webname/} 站点名称{dede:global.cfg_basehost/} 站点url(后台设置){dede:global.cfg_cmsurl/} 站点实际url{dede:global.cfg_memberurl/} 会员中心地址{dede:global.cfg_dataurl/} 站点data目录地址{dede:global.cfg_templeturl/} 模板目录地址{dede:global.cfg_powerby/} 底部版权{dede:global.cfg_beian/} 备案信息================================={dede:field.description function='html2text(@me)'/} 站点描述{dede:field.phpurl/} 站点plus目录站点地址{dede:field.title/} 标题[field.title]在底层模板中使用{dede:global.cfg_keywords/} 关键字{dede:field.content/} 栏目内容{dede:field.position/} 当前位置{dede:field.pubdate function="MyDate('Y-m-d H:i',@me)"/} 时间[field:pubdate function="MyDate(d日,@me)"/]底层模板调用时间{dede:field.source/} 来源{dede:field.writer/} 作者==================================[field:info /] 简介-------用于底层模板[field:description/] 用于调用文章的简介================================={dede:flink row='24'/}友情链接==================================点击次数----1<script src="{dede:field name='phpurl'/}/count.php?view=yes&aid={dede:field name='id'/}&mid={dede:field name='mid'/}" type='text/javascript' language="javascript"></script>点击次数----2[field:click runphp="yes"]if(@me>1000)@me='<font color="#ff0000">@me</font>';else @me=@me;[/field:click] 超过1000点击的,显示红色=================================={dede:field.body/} 文章内容{dede:adminname/} 责任编辑{dede:pagebreak/} 页码{dede:prenext get='pre'/} 上一篇{dede:prenext get='next'/} 下一篇===================================导航{dede:channel type='self' currentstyle="<span><a href='~typelink~' class='thisclass'>~typename~</a></span>"}<span><a href='[field:typeurl/]'>[field:typename/]</a></span>{/dede:channel}==================================调用模板文件{dede:include filename="*.htm"/}=================================={dede:memberinfos}<a href="[field:spaceurl /]" class="userface"><img src="[field:face/]" width="52" height="52" /></a> 头像<a href='[field:spaceurl /]' class="username">[field:uname/]</a> 用户名<a href="[field:spaceurl /]" class="useract-vi">查看详细资料</a><a href="[field:spaceurl /]&action=guestbook" class="useract-pm">发送留言</a><a href="[field:spaceurl /]&action=newfriend" class="useract-af">加为好友</a>用户等级:</small>[field:rankname /]注册时间:</small>[field:jointime function="MyDate('Y-m-d H:m',@me)"/]最后登录:</small>[field:logintime function="MyDate('Y-m-d H:m',@me)"/]{/dede:memberinfos}======================================<a href="{dede:field name='phpurl'/}/stow.php?aid={dede:field.id/}" target="_blank">收藏</a><a href="{dede:field name='phpurl'/}/erraddsave.php?aid={dede:field.id/}&title={dede:field.title/}" target="_blank">挑错</a><a href="{dede:field name='phpurl'/}/recommend.php?aid={dede:field.id/}" target="_blank">推荐</a><a href="#" onClick="window.print();">打印</a>==============================文档列表{dede:arclist titlelen=42 row=10}<a href="[field:arcurl/]">[field:title/]</a>[field:description function='cn_substr(@me,80)'/]...{/dede:arclist}==============================连接js文件<script language="javascript" type="text/javascript" src="{dede:global.cfg_cmsurl/}/include/dedeajax2.js"></script>==============================连接css文件<link href="{dede:global.cfg_cmsurl/}/文件的路径/**.css" rel="stylesheet" type="text/css"/>==============================显示图片<a href='[field:arcurl /]'>[field:image/]</a> 可以在a标记中加入title属性。
第五章dedecms标签及模版
flink友情链接
功能:用于获取友情链接,在DedeCMS系统中已经默认集成 友情链接插件,所以无需其他安装即可使用该标签。
语法: {dede:flinkrow='24'/} 参数: type='textall'链接类型 row=24链接数量 titlelen=24站点标题文字的长度 linktype=1链接位置内页 typeid=0友情链接类型,默认为所有类型,可以在系统后台
5.1.1全局标签
1.arclist文档列表 功能:用于获取系统主从表模型(如:文章、软件、图集、商
品等)的一列文档,也称自由列表块标记,其中imglist、 imginfolist、specart、coolart、autolist都是由该标记 所定义的不同属性延伸出来的别名标记。
arclist文档列表
pagelist列表分页标签
功能:表示分页页码列表 语法:
参数: listsize=3表示[1][2][3]这些项的长度x2 listitem='index,pre,pageno,next,end,option'表示页码样式,可以把下面的值叠加 index 首页 pre上一页 pageno页码 next下一页 end末页 option下拉跳转框
[模块]-[友情链接]中的“网站类型管理”中查看。
功能:用于获取友情链接类型 语法:
参数: row=24链接类型数量 titlelen=24链接文字的长度
flinktype标签
myad标签
功能:调用广告内容 语法: {dede:myadtypeid=''name=''/} 参数: name=''标记名称,该项是必须的属性,以下2、3
第六单元dedecms 织梦标签
1)服务器
2)安装dedecms程序
(四)核心知识点:
1.常用全局标签
{dede:global.cfg_cmsurl/}对应的是网站根目录/
{dede:global.cfg_webname/}网站名称
{dede:global.cfg_soft_lang/}网页编码GBK2312或者UTF-8
北京财经专修学院教案
授课教师
庞红霞
授课名称
电商平台搭建
授课专业班级
授课时间
审批签字
(章节)题目
第二单元网站基本知识
教学目的
1.wamp5环境配置、安装
2.dedecms安装配置、安装
3.自主学习能力,提高审美能力等
教学重点
4.wamp5环境配置
5.dedecms安装配置、安装
教学难点
Wamp5配置
考核知识点
{dede:field.seotitle/}栏目SEO标题
{dede:field.content/}栏目内容
标签:type
作用:单个栏目的调用
适用范围:全局
语法:{dede:type typeid=""}
<a href="[field:typeurl/]">[field:typename/]</a>
标签:channelartlist
作用:获取当前栏目的下级栏目的内容列表标签,可以嵌套适用type,
channel,arclist标签。
语法:
{dede:channelartlist type=""}
<a href="[field:typeurl/]">[field:typename/]</a>
如何实现织梦DedeCMS的tag标签静态化方法
大家在用织梦DedeCMS建设网站的时候,会发现默认的dedecms系统的TAG标签链接不是静态的(url中包含有“tags?/”),动态的url并不利于网站的seo优化,那怎么来实现织梦DedeCMS 的tag标签静态化呢?1、进入你的DedeCMS后台,在左边找到“系统-->系统基本设置-->核心设置”,在下面有一项“是否使用伪静态”,把此项后面的点上“是”。
表示网站要启用伪静态。
2、在DedeCMS源代码的目录里,依次找到include/taglib/tag.lib.php文件,大概在87行左右,找到:$row['link'] = $cfg_cmsurl."/tags.php?/".urlencode($row['keyword'])."/";将其改为:$row['link'] = $cfg_cmsurl."/tags/".urlencode($row['keyword']).".html";这一步就将TAG链接中的问号去掉了。
3、依旧在DedeCMS源代码的目录里,依次找到templets/default/taglist.htm,找到:<strong>当前位置:</strong>:<a href="{dede:global.cfg_cmsurl/}/">主页</a> > <a href='tags.php'>TAG标签</a> > {dede:field.title /}修改为<strong>当前位置:</strong>:<a href="{dede:global.cfg_cmsurl/}/">主页</a> > <a href='/tags.html'>TAG标签</a> > {dede:field.title /}这一步将TAG连接的列表页的URL改为以.html结束。
织梦(DEDE)模板标签代码参考及使用方法
【Arclist标记】这个标记是DedeCms最常用的一个标记,也叫自由列表标记,其中hotart、coolart、likeart、artlist、imglist、imginfolist、specart、autolist这些标记都是由这个标记所定义的不同属性延伸出来的别名标记。
功能说明:获取指定的文档列表适用范围:封面模板、列表模板、文档模板基本语法:{dede:arclist typeid=''row=''col=''titlelen=''infolen=''imgwidth="''"imgheight="''"listtype=''orderby=''keyword=''}底层模板(InnerText){/dede:arclist}属性说明:[1]typeid=''表示栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;[2]row=''表示返回文档列表总数;[3]col=''表示分多少列显示(默认为单列);[4]titlelen=''表示标题长度;[5]infolen=''表示内容简介长度;[6]imgwidth=''表示缩略图宽度;[7]imgheight=''表示缩略图高度;[8]type=''表示档案类型,其中空值、不使用这个属性或type='all'时为普通文档§type='commend'时,表示推荐文档,等同于{dede:coolart}{/dede:coolart}§type='image'时,表示必须含有缩略图片的文档,等同于{dede:imglist}{/dede:imglist}、{dede:imginfolist}{/dede:imginfolist}§type='spec'时,表示专题,等同于标记{dede:specart}{/dede:specart}以上属性值可以联合使用,如:type='commend image'表示推荐的图片文档[9]orderby=''表示排序方式,默认值是senddate按发布时间排列。
如何创建织梦自定义标签
பைடு நூலகம்
如何创建织梦自定义标签
织梦(DEDECMS)的标签功能对于普通的用户来说已经非常的强大,但是如果对于我们做 一些稍微大型的网站, 对于一些织梦的功能二次开发, 就需要用我们来自定义织梦的标签了。 今天恰维网络就织梦如何自定义标签来给大家讲解一下,希望对大家有所帮助。
首先,像织梦的 dede:arclist,这样的标签来说,主要是列举出符合条件的文章列表,比如某 个栏目下的,某个属性的。如果我们要修改调用某个自定义属性的内容,而这个标签无法满 足我们的时候, 怎么去做呢?在织梦的后台–模板–标签源码管理, 这个里面会列举出我们常 用的一些标签,其实,我们用的这些标签都是在这里定义的,如果我们需要重新定义一个标 签,可以点击右上角的【增加一个新的标签】 。 这个会有详细的说明,标签文件名为:标签名.lib.php 接口函数定义为:function lib_标签名 (&$ctag,&$refObj),返回值是结果字符串修改标签时为了防止出错,您也可以修改它的名称 (同时修改文件名和函数名),这样等同继承了原来标签的代码建立一个新的标签。 <?php if(!defined(‘DEDEINC’)) { exit(“Request Error!”); } function lib_demotag(&$ctag,&$refObj) { global $dsql,$envs; //属性处理 $attlist=”row|12,titlelen|24″; FillAttsDefault($ctag->CAttribute->Items,$attlist); extract($ctag->CAttribute->Items, EXTR_SKIP); $revalue = ”; //你需编写的代码,不能用 echo 之类语法,把最终返回值传给$revalue //—————————————————— $revalue = ‘Hello Word!’; //—————————————————— return $revalue;
dedecms 扩展标签和dede自定义标签实现方法
我们需要知道下扩展标签的存放目录及文件名构成,首先,扩展的标签都是存放在/include/taglib这个目录,名称都是以“标签名.lib.php”格式,例如{dede:channel/}标签对应的是channel.lib.php文件。
我们可以看一个示例标签:demotag.lib.php代码如下:if(!defined('dedeinc')){exit(request error!);}function lib_demotag(&$ctag,&$refobj){global $dsql,$envs;//属性处理$attlist=row|12,titlelen|24;fillattsdefault($ctag->cattribute->items,$attlist);extract($ctag->cattribute->items, extr_skip);$revalue = '';//你需编写的代码,不能用echo之类语法,把最终返回值传给$revalue//------------------------------------------------------$revalue = 'hello word!';//------------------------------------------------------return $revalue;}?>我们登录系统后台的[模板]-[全局标签测试]中运行{dede:demotag/},显示如下的结果:,我们会发现标签起作用了,输出了我们的内容。
至此我们完成了标签的编写,这里面主要涉及到php、mysql的很多知识,需要有一定相关方面的基础才能够编写标签了,当然这里只是一个简单的标签开发例子,还有许多的东西可以去开发。
织梦DEDE模板调用标签大全详细完整总结篇
织梦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='thisclass'><a href='~typelink~'>~typename~</a> </li>"}<li><a href='[field:typelink/]' target="_blank">[field:typename/]</a> </li>{/dede:channel}--------------------------------------------------------------------------------指定调用栏目标签:{dede:onetype typeid='ID'}[field:typename /]{/dede:onetype}--------------------------------------------------------------------------------频道栏目调用标签:{dede:channel type='self'}<li><a href='[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 class=ulink ",@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'/}/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'/}/arcID={dede:field name=ID/}">收藏</a>][<a href="{dede:field name='phpurl'/}/arcID={dede:field name=ID/}">推荐</a>][<a href="{dede:field name='phpurl'/}/arcID={dede:field name=ID/}">评论</a>][<a href="#" onClick="();">打印</a>][<a href="#" onClick="();">关闭</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=1 titlelen=24 orderby=pubdate att=2} <dt> [field:textlink/]<span>[field:description/]……</span> </dt> {/dede:arclist}--------------------------------------------------------------------------------最新文章调用标签:{dede:arclist row=8 titlelen=24 orderby=pubdate}<li>[field:textlink/]</li> {/dede:arclist}--------------------------------------------------------------------------------热关键字调用标签: {dede:hotwords num='5' subday='30'/}--------------------------------------------------------------------------------最新图文调用标签:{dede:arclist row=4 titlelen=20 orderby=pubdate type='image.' imgwidth='152' imgheight='98'}<dd><a href="[field:arcurl/]"><img src="[field:picname/]" alt="[field:title/]" ></a><span><a title="[field:title function='htmlspecialchars(@me)'/] " href="[field:arcurl /]">[field:title /]</a></span> </dd>{/dede:arclist}--------------------------------------------------------------------------------推荐文档调用标签: {dede:arclist type='commend' titlelen='40' row='10'} <li><a title="[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><a title="[field:title function='htmlspecialchars(@me)'/] " href="[field:arcurl /]">[field:title /]</a></li> {/dede:arclist}--------------------------------------------------------------------------------热点文档调用标签: {dede:arclist orderby='click' titlelen='40' row='10'} <li><a title="[field:title function='htmlspecialchars(@me)'/] " href="[field:arcurl /]">[field:title /]</a></li> {/dede:arclist}--------------------------------------------------------------------------------相关文档调用标签:{dede:likeart titlelen='24' row='10'} <li><a title="[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><a href='[field:arcurl /]'>[field:image/]</a>--------------------------------------------------------------------------------调用文字链接标记:<a href="[field:aucurl/]" title="[field:title/]">[field:title/]</a><a title="[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' function='html2text(@me)'/}--------------------------------------------------------------------------------栏目介绍:{dede:field name='description' function='html2text(@me)'/} --------------------------------------------------------------------------------调用外部htm文件:{dede:include file='' ismake='yes'/}--------------------------------------------------------------------------------搜索文章调用标签:{dede:global name='keyword'/}"的搜索结果- {dede:global name='cfg_webname'/} 搜索" {dede:global name='keyword'/}</span>" 的结果--------------------------------------------------------------------------------递增序列号: [field:global name=autoindex/]--------------------------------------------------------------------------------列表隔5行加一行线:{dede:list pagesize='50'}<LI><a href="[field:arcurl /]" title="[field:title function='htmlspecialchars(@me)'/]"target=_blank>[field:titlefunction="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(@me%5==0)@me="<hr />";else @me="";[/field:global]{/dede:list}<DIV class="line2 m1 m3"></DIV></LI>--------------------------------------------------------------------------------最新文章列表“隔行换色” 的方法{dede:arclist orderby=pubdate titlelen='26' row='10'}[field:global runphp='yes' name=autoindex]$a="<div id='a'>";$b="<div id='b'>";if ((@me%2)==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">= function () { setTimeout( function () { var text = ("text"); if (text) { text = text + "\r\n本篇文章来源于地址.COM 原文链接:"+; ("text", text); } }, 100 ) }</script>--------------------------------------------------------------------------------按时间点击文章排行榜调用标签:按总: {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’}<a href=”[field:typelink/]“>[field:typename/]</a>{/dede:channel}或者{dede:global name=’maplist’/}--------------------------------------------------------------------------------搜索表单调用标签: <form action="{dede:global name='cfg_phpurl'/}/" name="formsearch"><input type="hidden" 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/" /> </form>--------------------------------------------------------------------------------实现“文章标题-2级栏目-1级栏目-网站名”形式{dede:field name='title'/}-{dede:field name='position' runphp='yes'}$tc="-"; trim($tf[$ta]).$tc;}$tk=substr($tk,0,-1);@me=$tk; trftime('%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、==========加小图片========[field:pubdate runphp='yes']$aa=strftime('%m-%d',@me);$ntime = time();$tagtime = @me;$day3 = 3600 * 24 * 3;if($tagtime > $ntime-$day3) @me = "<img src='' />".$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:" target="_top" title="在百度搜索“{dede:field name="title" /}”相关内容"><font color=red>在百度搜索更多繁体字</font></a>】把你的网址改一下,不加http,演示:文章页或者【<a href="javascript:" 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='//$k/'>$k</a> ";}@me= str_replace('+', ' ',trim(@me));}{/dede:field}--------------------------------------------------------------------------------真正采集热门Tags,刷新一次变换一次模板代码:{dede:tag row='10' sort='month' }<a class="tag" href='[field:link/]'>[field:tagname/] </a>{/dede:tag}<script language="javascript"><!--var tag_a=("a");for( i in tag_a){var offset=6;var num=4;if=="tag"){var rnd=((num+offset)*());if(rnd>offset){="tag"+(rnd-offset);}}}ag1 { 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:highlight/]([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:highlight/]([field:result/])</a>{/dede:tag}--------------------------------------------------------------------------------任何系统页面调用会员积分排行:{dede:sql sql="Select id,userid,uname,scores From dede_member order by scores desc limit 0,10"}<dd><span class="name"><a href='[field:globalname='cfg_cmspath'/]/member/[field:userid/]/'>[field:uname/]</a></span><span class="jifen">积分[field:scores/]</span></dd>{/dede:sql}--------------------------------------------------------------------------------<!--问答系统-->调用{dede:ask row='10'}<li><span class="gpclass">[<a href="[field:typeurl/]">[field:tidname/]</a>]</span><span class="gptlink"><a href="[field:url/]">[field:title/]</a></span> </li>{/dede:ask}--------------------------------------------------------------------------------企业调用{dede:sql sql="SELECT ,,,,,FROM dede_member mleft join dede_member_cominfo c on =where = 1 and = 1LIMIT 0 , 10"}<dd><span class="name"><a href='[field:global name='cfg_cmspath'/]/member/[field:userid/]/'>[field:comname/]</a></span></dd>{/dede:sql}--------------------------------------------------------------------------------专题调用{dede:arclist row=10 orderby=rand type='spec.'}<li><a href="[field:filename function='str_replace("","",@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 From dede_tag_list t left join dede_tag_index i on = where ='@me'");$tsql->Execute('t');while($row = $tsql->GetArray('t',MYSQL_ASSOC)){$tags .= "<a href='//".urlencode($row['tagname'])."'>".$row['tagname']."</a>";}@me=$tags;[/field:id]方法2:在inc_functi*****.php文件里加入function listtag($aid){$tsql = new DedeSql(false);$tags = '';$tsql->SetQuery("Select From dede_tag_list t left join dede_tag_index i on = where ='$aid'");$tsql->Execute('t');while($row = $tsql->GetArray('t',MYSQL_ASSOC)){$tags .= "<a href='//".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=''}--------------------------------------------------------------------------------去除html[field:title function='htmlspecialchars(@me)'/]主要使用在FLASH以及<a>中,是了了去除标签中的HTML元素,比如<b></b>等,如果不使用此标签,则会导致HTML代码显示在页面中。
DEDECMS模板管理
DEDECMS模板管理篇一:DEDECMS织梦模板制作手册(超详细)DEDECMS模板制作教程1.Arclist 标记的应用,使用率很高,相当实用,所以我们使用都必须熟练掌握。
2. Field 标记在封面模板、列表模板、文档模板的使用频率很高,实用。
主要用来获得到系统变量的值或3.Channel 标记主要用于获取栏目列表,用法非常简单,主要是区分“type = top,sun/son,self ”的所调5.Autochannel 标记使用实例6.Mytag 标记使用实例板中多次出现的相同元素用一个自定义标记表示出来,从而达到,一次更改,全局更换的效果。
辅助插件的广告管理也有相似的效果。
7.Type 标记用于获取一组投票表单。
其使用范围限于:封面模板。
8.Flink 标记使用实例用于获取友情链接。
调用该标记后可以得到四种友情链接的形式。
9.Mynew标记使用实例用于获取站内新闻。
站内新闻有利于站长及时与会员沟通。
10. ChannelArtlist标记使用实例用于获取当前频道的下级栏目的内容列表。
该标记在封面模板(包括主页)中的经常被用到11. List 标记使用实例12. Pagelist 标记使用实例13. Pagebreak 标记使用实例14. Prennext 标记使用实例15. Pagetitle 标记使用实例用的对象就行了。
4.Type 标记表示指定的单个栏目的链接,用法非常简单。
者路径,用法很灵活。
可以直接展示数据,如调用position,得到栏目一 > 栏目二” 这样形式的链接;或者,调用templeturl得到/templets这样路径。
模板教程【Arclist 标记使用实例】(一)Arclist 标记的使用思路、步骤:一、明确使用范围我们在使用任何标记的过程中,都必须明确其使用的范围,否则可能无法正常调用该标签,【Arclist 标记】的使用范围是:封面模板、列表模板、文档模板。
DEDE 织梦 标签教程
1.adminname标签名称:adminname功能说明:获得责任编辑名称适用范围:仅内容模板article_*.htm适用版本:DedeCMS V5.5/V5.6/V5.7基本语法:{dede:adminname/}2.arclist标签名称:arclist功能说明:获取指定文档列表适用范围:全局使用适用版本:DedeCMS V5.5/V5.6/V5.7基本语法:{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版中本属性可以通过多种方式进行多行显示如果col='1'要多列显示的可用div+css实现以下为通过div+css实现多列的示例:<style type=text/css>div{width:400px;float:left;}</style>{dede:arclist row='10'titlelen='24'orderby='pubdate'idlist=''col='2'}•[field:textlink/]([field:pubdate function=MyDate ('m-d',@me)/])<br/>{/dede:arclist}当col>1将使用原来的table多列方式显示row='10'返回文档列表总数typeid=''栏目ID,在列表模板和档案模板中一般不需要指定,在首页模板中允许用","分开表示多个栏目;getall='1'在没有指定这属性的情况下,在栏目页、文章页模板,不会获取以","分开的多个栏目的下级子类titlelen='30'标题长度等同于titlelengthinfolen='160'表示内容简介长度等同于infolength(只控制infos,并不控制description的内容)imgwidth='120'缩略图宽度imgheight='90'缩略图高度listtype='all'栏目类型image含有缩略图commend推荐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频道ID3.arclistsg标签名称:arclistsg功能说明:单表独立模型的文档列表调用标记适用范围:仅内容模板article_*.htm适用版本:全局使用基本语法:{dede:arclistsg flag='h'typeid=''row=''col=''titlelen=''orderway=''keyword=''limit='0,1'}<a href='[field:arcurl/]'>[fie ld:title/]</a>{/dede:arclistsg}参数说明:col=''分多少列显示(默认为单列),5.3版中本属性无效,要多列显示的可用div+css实现row='10'返回文档列表总数typeid=''栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;titlelen='30'标题长度等同于titlelength orderwey='desc'或'asc'排序方向keyword=含有指定关键字的文档列表,多个关键字用","分innertext="[field:title/]"单条记录样式(innertext是放在标签之间的代码)arcid=''指定文档IDidlist=''提取特定文档(文档ID)channelid=''频道IDlimit=''起始,结束表示限定的记录范围(如:limit='1,2')flag='h'自定义属性值:头条[h]推荐[c]图片[p]幻灯[f]滚动[s]跳转[j]图文[a]加粗[b]subday='天数'表示在多少天以内的文档4.ask标签名称:ask功能说明:问答调用标签适用范围:全局标记适用版本:DedeCMS V5.5/V5.6/V5.7基本语法:{dede:ask row='6'qtype='new'tid='0'titlelen='24'}<dd><span class="tclass">[<a href='[field:typeurl/]'>[field:tidname/]</a>]</span><span class="tlink"><a href="[field:url/] ">[field:title/]</a></span></dd>{/dede:ask}标签属性:row:调用条数qtype:排序类型commend推荐、ok表示已解决问题、high高分问题、new最新问题tid:栏目id,默认是全部titlelen:标题长度 5.autochannel标签名称:autochannel功能说明:指定排序位置的单个栏目的链接适用范围:全局标记适用版本:DedeCMS V5.5/V5.6/V5.7基本语法:{dede:autochannel partsort=''typeid=‟‟}{/dede:autochannel}标签属性:partsort:栏目所在的排序位置typeid:获取单个栏目的顶级栏目 6.bookcontentlist标签名称:bookcontentlist功能说明:连载图书最新内容调用适用范围:全局使用基本语法:{dede:bookcontentlist row='12'booktype='-1'orderby='lastpost'author='' keyword=''}<table width="100%"border="0"cellspacing="2"cellpadding="2"><tr><td width='40%'> [[field:cataloglink/]][field:booklink/]</td><td width='40%'>[field:contentlink/]</td><td width='20%'>[field:lastpost function="GetDateMk(@me)"/]</td></tr></table>{/dede:bookcontentlist} 7.booklist标签名称:booklist功能说明:连载图书调用适用范围:全局使用基本语法:{dede:booklist row='12'booktype='-1'orderby='lastpost'author=''keyword=''}<a href='[field:bookurl/]'>[field:bookname/]</a><br />{/dede:booklist}相关函数:文件\include\taglib\booklist.lib.php第6行orderby='dateline'排序,默认为时间orderway='desc'排序方向,默认是最新主题在前row='12'记录数titlelen='30'主题标题(subject)最大长度16.hotwords标签名称:hotwords功能说明:获取网站搜索的热门关键字适用范围:全局使用基本语法:{dede:hotwords/}参数说明:num='6'关键词数目subday='365'天数maxlength='16'关键词最大长度guide标签名称:infoguide功能说明:分类信息的地区与小分类搜索适用范围:全局使用基本语法:{dede:infoguide/}link标签名称:infolink功能说明:调用分类信息地区与类型快捷链接适用范围:全局使用基本语法:{dede:infolink/}19.json标签名称:json功能说明:调用某个远程连接的json数据库适用范围:全局使用使用版本:DedeCMS V5.7基本语法:{dede:json url='http://yoursite/json.php'cache=300}[field:id/]-[field:title/]<br/>{/dede:json}标签属性:url:json数据地址cache:缓冲时间20.likearticle标签名称:likearticle功能说明:自动关连文档标签适用范围:内容页使用基本语法:{dede:likearticle row=''col=''titlelen=''infolen=''}<a href='[field:arcurl/]'>[field:title/]</a>{/dede:likearticle}参数说明:col=''分多少列显示(默认为单列)row='10'返回文档列表总数titlelen='30'标题长度等同于titlelengthinfolen='160'表示内容简介长度等同于infolengthmytypeid=0手工指定要限定的栏目id,用,分开表示多个innertext=''单条记录样式(指标签中间的内容)21.likepage标签名称:likepage功能说明:调用相同标识单页文档适用范围:全局标记基本语法:{dede:likepage likeid=''row=''/}标签属性:row:调用条数likeid:标识名22.likesgpage标签名称:likesgpage功能说明:单页文档调用标签适用范围:全局标记基本语法:{dede:likespage row=''/}标签属性:row:调用条数23.loop标签名称:loop功能说明:调用任意表的数据标签适用范围:全局标记基本语法:{dede:loop table='dede_archives'sort=''row='4'if=''}<a href='[field:arcurl/]'>[field:title/]</a>{/dede:loop}标签属性:table:查询表名sort:用于排序的字段row:返回结果的条数if:查询的条件24.memberinfos标签名称:memberinfos功能说明:文档关连的用户信息适用范围:仅内容模板article_*.htm基本语法:{dede:memberinfos mid=''/}参数说明:mid=…‟用户ID25.memberlist标签名称:memberlist功能说明:会员信息调用标签适用范围:全局使用基本语法:{dede:memberlist orderby='scores'row='20'}<a href="../member/index.php?uid={dede:erid/}">{dede:erid/}</a><span>{dede:field.scores/}</span >{/dede:memberlist}参数说明:row='6'调用数目iscommend='0'是否为推荐会员orderby='logintime'按登陆时间排序money按金钱排序scores按积分排序26.myad标签名称:myad功能说明:获取广告代码适用范围:全局使用基本语法:{dede:myad name=''/}标签属性:typeid:投放范围,0为全站name:广告标识27.mynews标签名称:mynews功能说明:站内新闻调用标签适用范围:全局使用基本语法:{dede:mynews row=''titlelen=''/}相关函数:文件\include\taglib\mynews.lib.php第2行function lib_mynews(&$ctag,&$refObj)参数说明:row='1'调用站内新闻数titlelen='24'新闻标题长度28.mytag标签名称:mytag功能说明:用于获取自定义宏标记的内容适用范围:全局使用基本语法:{dede:mytag typeid='0'name=''/}参数说明:name=‟‟标记名称,该项是必须的属性,以下2、3是可选属性;ismake=‟yes|no‟默认是no表示设定的纯HTML代码,yes表示含板块标记的代码;typeid=…‟表示所属栏目的ID,默认为0,表示所有栏目通用的显示内容,在列表和文档模板中,typeid默认是这个列表或文档本身的栏目ID。
7、织梦CMS自编教程
使用教程谭鸿健编写桂林理工大学南宁分校计算机应用系2017年8月目录一、使用phpStudy搭建dedeCMS (3)1.phpStudy的下载和安装 (3)2.DedeCMS程序的下载和安装 (5)二、织梦CMS系统文件夹讲解 (10)三、织梦CMS常见数据库表 (13)四、网站栏目添加与维护 (14)1.网站栏目管理 (14)2.网站栏目增加与排序 (14)3.网站栏目预览、内容、更改与移动 (22)4.网站栏目删除与HTML更新 (24)5.网站栏目获取JS与右键菜单 (26)五、网站文章内容管理 (27)六、站点评论管理 (40)七、内容模型管理 (42)1.认识内容模型管理 (42)2.增加新模型 (42)3.模型更改 (45)4.模板修改 (47)5.模型导出 (47)6.模型导入 (48)7.模型复制 (48)8.自定义搜索 (48)9.删除模型 (49)10.模型使用 (49)八、附件管理 (54)1.进入附件管理 (54)2.附件上传 (54)3.附件管理 (55)4.文件式管理器 (56)九、单页文档 (56)1.单页文档的管理 (57)2.单页文档的添加 (57)3.单页文档的修改 (58)4.单页文档的删除 (59)十、联动类别管理 (59)1.联动类别概念 (59)2.联动类别管理 (59)3.创建联动类别 (60)4.联动类别维护 (62)5.联动类别应用 (62)十一、织梦CMS文档列表标签 (62)1.织梦系统(DedeCMS)的标签知识 (62)2.文档列表标签(arclist)详解 (63)3.文档列表标签(arclist)图文实例 (64)十二、文档归档标签(list) (66)1.文档归档标签(list)知识详解 (66)2.分页页码标签(pagelist)知识详解 (67)十三、文档内容调用(field) (67)1.文档内容(field)等相关标签知识讲解 (68)十四、常用全局调用标签 (69)十五、万能标签 (70)1.万能循环标签(Loop) (70)2.万能调用标签(SQL) (71)一、使用phpStudy搭建dedeCMS1.phpStudy的下载和安装phpStudy是一个PHP调试环境的程序集成包。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
首先我简单的介绍下自己,我是织梦官方团队的天涯,接触织梦也有2年多时间了,之前一直在论坛上做斑竹,认识了很多喜爱织梦的朋友,后来便加入了织梦团队,发现这是一个充满朝气、有激情和学习力的地方,这次受站长网的邀请来给大家做一次DedeCMS程序方面的讲座。
因为这次主要是讲座,缺乏体系的培训内容,本次讲座我将织梦技术论坛较为常见的问题加以整理,并结合一些其他方面的应用内容进行补充,让大家更了解DedeCMS程序的使用。
安全设置首先是程序安全问题,这里主要是一些拥有独立服务器的站长,如果自己在系统安全部署上面有些经验那应该没有什么问题,有部分站长没有系统安全部署的经验,加上现在挂马猖獗,所以许多人都在担心,官方在早些时候就发了一个关于《DedeCms V5.3/V5.5 安全设置指南》的主题帖,地址为:/172474.html,这里面说了如何在Win Serv环境配置服务器环境。
不过文中提到了织梦的文件目录,这里我对整个系统文件目录进行一个说明:/178324.html,当然,如果你安装个模块会相应的增加一些目录,例如模块group、ask等。
{dede:sql}标签的用法sql标签可以称得上是个万能标签了,查询数据库将其输出,这里介绍一些关于这个标签的用法:1.用来输出统计内容,这个是不错的,举个例子,我们来统计下总共发了多少的文章,思路就是输出dede_addonarticle这个文章附加表内容总数就可以了。
{dede:sql sql="SELECT COUNT(*) AS nums FROM dede_addonarticle"}[field:name = "nums"/]{/dede:sql}2.使用~field~来进行特殊的查询,比如之前论坛上面很多会员需要做一个输出当前发布文章会员的相关内容,之前用sql或者arclist标签是没办法实现的,因为每篇内容是不同的,这里我们来用5.5的sql语句来做个示范。
我们首先在文章模板中相应的位置加上下面的标签{dede:sql sql="SELECT * FROM dede_archives WHERE writer=~writer~"}[field:id/],{/dede:sql}这个放到article_article.htm页面,将会检索出当前会员发布的相关文章,这里的~ writer~会根据当前内容的环境变量进行替换后再执行查询。
这里出现在SQL语句中条件查询的~ writer~,也就是$refObj->Fields[$value]这个里面的相关内容模板中使用PHP许多人希望织梦的模板标签能够更加灵活,加入可以运行PHP的功能,这里在DedeCMS V5.5中就加入了一个可以执行php的特殊标签{dede:php}{/dede:php},这个标签可以执行PHP语句了。
我这里举几个常用的例子:1.最简单的输出内容:{dede:php}$numA = 1;$numB = 2;echo $numA + $numB;{/dede:php}这个输出的内容是计算结果:32.结合SQL查询输出单条内容{dede:php}$row = $dsql->GetOne('select id,typename from dede_arctype where id=2');print_r($row);{/dede:php}这个输出的内容是Array([id] => 2[typename] => 问答)3.获取当前页面的变量比如我们这里进入系统后台的[模板]-[全局标记测试],我们在代码中填入下面的内容:{dede:php}print_r($refObj->Fields);{/dede:php}如果环境变量保持默认,即“不使用环境ID”,我们会看到以下的结果:Array([typeid] => 0[phpurl] => /plus[indexurl] => /[templeturl] => /templets[memberurl] => /member[specurl] => /special[indexname] => 主页[templetdef] => /templets/default)那我们再换个环境变量测试看看,这里以我本地的栏目为测试了:Array([id] => 3[reid] => 0[topid] => 0[sortrank] => 1[typename] => 产品[typedir] => {cmspath}/product… …[indexname] => 主页[templetdef] => /templets/default[position] => 主页> 产品>[title] => 产品)这样一来就检索出当前页面的局部变量了,接下来我们可以来结合前面的SQL语句来实现根据不同环境ID调用内容不同栏目内容。
例如:{dede:php}$thisid = $refObj->Fields['id'];$row = $dsql->GetOne('select id,typename from dede_arctype where id='.$thisid);print_r($row);{/dede:php}这样是来调用当前栏目的标题,这个标签功能类似于{dede:field.typename/}写自己的标签,让别人说去吧DedeCMS从V5.3开始就支持自己扩展标签,不过许多新人很少用那个东西,今天我就来简单的介绍下如何编写自己的调用标签。
我们需要知道下扩展标签的存放目录及文件名构成,首先,扩展的标签都是存放在/include/taglib这个目录,名称都是以“标签名.lib.php”格式,例如{dede:channel/}标签对应的是channel.lib.php文件。
我们可以看一个示例标签:demotag.lib.phpif(!defined('DEDEINC')){exit("Request Error!");}function lib_demotag(&$ctag,&$refObj){global $dsql,$envs;//属性处理$attlist="row|12,titlelen|24";FillAttsDefault($ctag->CAttribute->Items,$attlist);extract($ctag->CAttribute->Items, EXTR_SKIP);$revalue = '';//你需编写的代码,不能用echo之类语法,把最终返回值传给$revalue//------------------------------------------------------$revalue = 'Hello Word!';//------------------------------------------------------return $revalue;}?>我们登录系统后台的[模板]-[全局标签测试]中运行{dede:demotag/},显示如下的结果:这里我们知道,其实标签生成的内容其实是这个函数的一个返回值,这里返回的内容都是字符串,也就是函数return $revalue;中的$revalue需要是经过处理后生成的字符串。
$attlist="row|12,titlelen|24";这个是属性列表,这个经过函数处理后会直接生成变量并复制,我们可以测试下,做如下的修改:$revalue = 'Hello Word!';$revalue .="Row:".$row.";TitleLen:".$titlelen;这样我们可以看到,这个属性已经被创建变量并且赋值了。
接下来我们可以再进一步去修改这个标签。
比如说我们需要写一个标签专门来查询文章内容页的那个相关文章,功能类似于上面sql标签中的那个sql,只是这里我们将其分装为一个标签。
我们可以新建一个标签,例如叫writerarc,那我们就需要创建一个writerarc.lib.php,然后模仿demotag 编写函数,注意需要修改为function lib_writerarc(&$ctag,&$refObj)接下来我们就可以编写查询语句及对底层模板处理的相关函数了$revalue = '';$innertext = $ctag->GetInnerText();$ctp = new DedeTagParse();$ctp->SetNameSpace('field', '[', ']');$sql = "SELECT * FROM dede_archives WHERE writer='{$refObj->Fields['writer']}' limit 0, $row";$innertext这个是用来获取标签的底层模板的,$ctp创建用于处理底层模板中的变量,并处理进行替换。
我们根据获取的属性编写我们的sql语句,这里我们使用limit 0, $row,这样就可以根据$row来确定查询的内容数目。
当然我们可以获取更多的属性以便我们这个标签更强大,例如我们可以增加类似于arclist中的相关属性,并在函数中进行处理,不过这个需要有一定的PHP基础。
接下来我们通过执行查询对sql及输出变量进行处理:$dsql->Execute('me',$sql);while($rs = $dsql->GetArray('me')){//根据属性处理查询变量$rs['title'] = cn_substr($rs['title'], $titlelen);//获取底层模板$ctp->LoadSource($innertext);foreach($ctp->CTags as $tagid=>$ctag) {if(!empty($rs[strtolower($ctag->GetName())])) {$ctp->Assign($tagid,$rs[$ctag->GetName()]);}}//根据底层模板及查询变量得到处理结果$revalue .= $ctp->GetResult();}这样我们就将查询出来的结果同底层模板中出现的相关变量进行替换,然后生成输出字符串,将所有的字符串信息存储到$revalue中。