Appearance
DedeCMS全局标签
arclist
功能:
用于获取系统主从表模型(如:文章、软件、图集、商品等)的一列文档,也称自由列表块标记,其中 imglist
、imginfolist
、specart
、coolart
、autolist
都是由该标记所定义的不同属性延伸出来的别名标记。
语法:
html
{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}
文件:
\include\taglib\arclist.lib.php
function lib_arclist(&$ctag,&$refObj)
默认底层模板:
imglist :part_imglist.htm
imginfolist :part_imginfolist.htm
arclist :part_arclist.htm
参数:
col=' '
分多少列显示(默认为单列);
TIP
5.3 版中本属性可以通过多种方式进行多行显示
如果 col='1'
要多列显示的可用 div + css
实现
以下为通过 div + css
实现多列的范例:
html
<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'
标题长度,等同于titlelength
;
infolen='160' 表示内容简介长度 等同于infolength(只控制infos,并不控制description的内容)
imgwidth='120' 缩略图宽度
imgheight='90' 缩略图高度
listtype='all' 栏目类型 image含有缩略图 commend推荐
orderby='sortrank' 文档排序方式
l orderby='hot' 或 orderby='click' 表示按点击数排列
l orderby='sortrank' 或 orderby='pubdate' 按出版时间排列
l orderby='near'
l orderby=='lastpost' 按最后评论时间
l orderby=='scores' 按得分排序
l orderby='id' 按文章ID排序
l orderby='rand' 随机获得指定条件的文档列表
keyword='' 含有指定关键字的文档列表,多个关键字用","分
innertext = '' 单条记录样式
aid='' 指定文档ID
idlist ='' 提取特定文档(文档ID)
channelid 频道ID
limit='起始ID,记录数'(起始ID从0开始)表示限定的记录范围(如:limit='1,2' 表示从ID为1的记录开始,取2条记录)
flag = 'h' 自定义属性值:头条[h]推荐[c]图片[p]幻灯[f]滚动[s]跳转[j]图文[a]加粗[b]
noflag = '' 同flag,但这里是表示不包含这些属性
orderway='desc' 值为 desc 或 asc ,指定排序方式是降序还是顺向排序,默认为降序
subday='天数' 表示在多少天以内的文档
底层字段:
ID(同 id),typeid,sortrank,flag,ismake,channel,arcrank,click,money,title,shorttitle,color,writer,
source,litpic(同picname),pubdate,senddate,mid, lastpost,scores,goodpost,badpost,notpost,
description(同infos),filename, image, imglink, fulltitle, textlink, typelink,plusurl, memberurl, templeturl,
stime(pubdate 的"0000-00-00"格式)
其中:
html
textlink = <a href='arcurl'>title</a>
typelink = <a href='typeurl'>typename</a>
imglink=<a href='arcurl'><img src='picname' border='0' width='imgwidth' height='imgheight'></a>
image = <img src='picname' border='0' width='imgwidth' height='imgheight' alt=’titile’>
注:字段调用方法[field:varname/],同样适用于其他标签
如:
html
{dede:arclist infolen='100'}
[field:textlink/]<br>
[field:infos/]<br>
{/dede:arclist}
底层模板里的Field实现也是织梦标记的一种形式,因此支持使用PHP语法,Function扩展等功能。
如: 给当天发布的内容加上 (new)
标志
html
[field:senddate runphp='yes']
$ntime = time();
$oneday = 3600 * 24;
if(($ntime - @me)<$oneday) @me = "<font color='red'>(new)</font>";
else @me = "";
[/field:senddate]
arclistsg 独立单表模型文档列表
**名称:**arclistsg
**功能:**类似arclist标签,获取指定单表模型(例如:分类信息),指定栏目,指定排序及呈现样式的一列文档
语法:
html
{dede:arclistsg flag='h' typeid='' row='' col='' titlelen='' orderway='' keyword='' limit='0,1'}
<a href='[field:arcurl/]'>[field:title/]</a>
{/dede:arclistsg}
文件:
\include\taglib\arclistsg.lib.php
function lib_arclistsg(&$ctag,&$refObj)
默认底层模板:
part_arclistsg.htm
参数:
col='' 分多少列显示(默认为单列),5.3版中本属性无效,要多列显示的可用div+css实现
row='10' 返回文档列表总数
typeid='' 栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;
titlelen = '30' 标题长度 等同于titlelength
orderwey='desc'或'asc' 排序方向
keyword= 含有指定关键字的文档列表,多个关键字用","分
innertext = "[field:title/]" 单条记录样式(innertext是放在标签之间的代码)
arcid='' 指定文档ID
idlist ='' 提取特定文档(文档ID)
channelid = '' 频道ID
limit='' 起始,结束 表示限定的记录范围(如:limit='1,2')
flag = 'h' 自定义属性值:头条[h]推荐[c]图片[p]幻灯[f]滚动[s]跳转[j]图文[a]加粗[b]
subday='天数' 表示在多少天以内的文档
底层字段:
ID(同 id), typeid, channel, arcrank, mid, click, title, senddate, flag, litpic(同picname), userip, lastpost, scores, goodpost, badpost, textlink
范例:
这个标签用于调用单表模型的内容,在V5.3系统中加入了单表模型的概念,脱离了以前的主从表的数据表关联结构,一般我们在添加内容模型的时候会选择是否为单表模型还是主从表模型。
我们可以进入系统后台[核心]-[内容模型管理],查看系统现有的内容模型,在系统默认环境下,只有分类信息是单表模型,一般添加单表模型,模型的id号都小于-1,即分类信息模型id号为-8。
在使用这个标签的时候,使用方法同arclist大致相同,我们来通过以下的标签内容来调用分类信息的内容:
html
{dede:arclistsg channelid='-8' limit='0,2'}
<a href='[field:arcurl/]'>[field:title/]</a> <br/>
{/dede:arclistsg}
这个标签就是调用分类信息的内容,从id为0开始调用2条记录,在系统后台的[全局标签测试]中显示以下的内容:
autochannel 指定栏目
**名称:**autochannel
**功能:**指定排序位置的单个栏目的链接
语法:
html
{dede:autochannel partsort='2' typeid=1}
<a href='[field:typelink/]'>[field:typename/]</a>
{/dede:autochannel}
文件:
\include\taglib\autochannel.lib.php
function lib_autochannel(&$ctag,&$refObj)
默认底册模板:
part_autochannel.htm
参数:
partsort = '0' 栏目所在的排序位置
typeid='0' 获取单个栏目的顶级栏目
底层字段:
id,typelink,typedir,isdefault,defaultname,ispart,namerule2,typename,moresite,siteurl,sitepath,listman
cattree 树形类目
**名称:**cattree
**功能:**树形类目标签
语法:
html
{dede:cattree typeid='' catid='' showall=''/}
文件:
\include\taglib\cattree.lib.php
lib_cattree(&$ctag, &$refObj)
**默认底层模板:**无
参数:
typeid='' 顶级树id
catid=0 上级栏目id
showall='' 在空或不存在时,强制用产品模型id;如果是 yes 刚显示整个语言区栏目树;为其它数字则是这个数字的模型的id
底层字段:
无
channel 获取栏目列表标签
**名称:**channel
**功能:**织梦常用标记,通常用于网站顶部以获取站点栏目信息,方便网站会员分类浏览整站信息
语法:
html
{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}
文件:
\include\taglib\channel.lib.php function lib_channel(&$ctag,&$refObj)
默认底层模板:
channel_list.htm
参数:
typeid = '0' 栏目ID
reid = '0' 上级栏目ID
row = '100' 调用栏目数
col = '1' 分多少列显示(默认为单列)
type = 'son | sun' son表示下级栏目,self表示同级栏目,top顶级栏目
currentstyle = '' 应用样式
底层字段:
ID(同 id),typeid, typelink, typename, typeurl,typedir(仅表示栏目的网址) 例:
html
{dede:channel type='top'}
<a href='[field:typelink /]'>[field:typename/]</a> {/dede:channel}
currentstyle中支持~rel~、~id~、~typelink~、~typename~
注:在没有指定typeid的情况下,type标记与模板的环境有关,如,模板生成到栏目一,那么type='son'就表示栏目一的所有子类
范例:
这个标签是全局常用标记,主要用于显示页面的栏目分类,我们可以查看默认模板\templets\default\head.htm中的相关代码:
html
{dede:channel type='top' currentstyle="<li class='thisclass'><a href='~typelink~'>~typename~</a> </li>"}
<li><a href='[field:typeurl/]'>[field:typename/]</a></li>
{/dede:channel}
这里的栏目可以通过后台进行设置,栏目显示顺序按照排序的高低进行,我们可以在系统后台[核心]-[栏目管理]中进行栏目设置:
设置完成我们可以在首页顶部看到相关的效果
当然这里涉及到一个顶级栏目和子级栏目显示的问题,我们可以在模板中使用相应的标签进行调用,我们来看一个封面的页面内容:
我们查看这个文章封面\templets\default\index_article.htm的模板标签
html
<ul>
{dede:channel type='son' currentstyle="<li class='thisclass'><a href='~typelink~'><span>~typename~</span></a> </li>"}
<li>
<a href='[field:typeurl/]'>
<span>[field:typename/]</span>
</a>
</li>
{/dede:channel}
</ul>
这里就使用了 type='son'这个属性用来显示子栏目,currentstyle则代表当前选中项的呈现样式。
很多用户希望顶部导航连接便于SEO,需要去除超链接中的“index.html”,我们可以在这里对标签进行一个修改:
html
{dede:channel type='top'}
<li>
<a href='[field:typeurl function='str_replace("index.html","",@me)'/]'>
[field:typename/]
</a>
</li>
{/dede:channel}
channelartlist 当前频道的下级栏目的内容列表
**名称:**channelartlist
**功能:**获取当前频道的下级栏目的内容列表标签
语法:
html
{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}
文件:
\include\taglib\channelartlist.lib.php function lib_channelartlist(&$ctag,&$refObj)
默认底层模板:
part_channelartlist.htm
参数:
typeid = '0' 频道ID,多个请用","分开,如果调用1个栏目可以使用typeid='5,0'来调用。分隔 row = '20' 获取的栏目返回值 其他说明: 除了宏标记外,channelArtlist 是唯一一个可以直接嵌套其它标记的标记,不过仅限于嵌套 {dede:type}{/dede:type} 和 {dede:arclist}{/dede:arclist} 两个标记。
底层字段:
包含{dede:type}{/dede:type}及{dede:arclist}{/dede:arclist}下面所有底层模板变量。
范例:
这个标签是系统中不多的一个支持嵌套的标签,这个标签通常使用在首页(含封面首页),用于输出一组栏目内容列表,我们可以看到默认模板首页:
这部分的内容就是通过这个标签进行显示的,我们可以查看首页模板\templets\default\index.htm
html
{dede:channelartlist}
<dl class="tbox">
<dt>
<strong>
<a href="{dede:field name='typeurl'/}">
{dede:field name='typename'/}
</a>
</strong>
<span class="more">
<a href="{dede:field name='typeurl'/}">更多...</a>
</span>
</dt>
<dd>
<ul class="d1 ico3">
{dede:arclist titlelen='60' row='8'}
<li>
<span class="date">
[field:pubdate function="MyDate('m-d',@me)"/]
</span>
<a href="[field:arcurl /]">[field:title /]</a>
</li>
{/dede:arclist}
</ul>
</dd>
</dl>
{/dede:channelartlist}
feedback 评论内容
**名称:**feedback
**功能:**用于调用最新评论
语法:
html
{dede:feedback}
<ul>
<li class='fbtitle'>[field:username function="(@me=='guest' ? '游客' : @me)"/] 对 [field:title/] 的评论:</li>
<li class='fbmsg'> <a href="plus/feedback.php?aid=[field:aid/]" class='fbmsg'>[field:msg /]</a></li>
</ul>
{/dede:feedback}
文件:
文件\include\taglib\feedback.lib.php
function lib_feedback(&$ctag,&$refObj)
默认底层模板:
tag_feedback.htm
参数:
row='12' 调用评论条数
titlelen='24' 标题长度
infolen='100' 评论长度
底层字段:
id,aid,typeid,username,arctitle,ip,ischeck,dtime,mid,bad,good,ftype,face,msg,title
范例:
这个标签主要调用系统的会员评论信息,我们在默认模板首页可以查看到相关的内容:
我们可以查看首页的模板\templets\default\index.htm有如下代码:
html
{dede:feedback row='5' titlelen='24' infolen='80'}
<li>
<small>
<a href="#" class="username">[field:username function="(@me=='guest' ? '游客' : @me)"/]</a> 评论
<a href="[field:global.cfg_phpurl/]/feedback.php?aid=[field:aid/]" class="title">[field:title/]</a>
</small>
<p>[field:msg/]</p>
</li>
{/dede:feedback}
这里调用的是会员最新评论的内容,当然我们也可以在系统后台的[核心]-[评论管理]中对现有的评论进行审核和编辑:
在[系统]-[系统基本参数] 的”互动设置“中也有评论的相关设置选项,可以控制会员评论。
field 内容变量
**名称:**field
**功能:**用于获取特定栏目或者档案的字段值及常用的环境变量值
语法:
{dede:field name='字段名'/} 或者
文件:
所有视图类中
默认底层模板:
无
参数:
**板块模板:**phpurl,indexurl,indexname,templeturl,memberurl, specurl
**列表模板:**position,title,phpurl,templeturl,memberurl,indexurl,indexname,specurl,栏目表dede_arctype的所有字段其中 position 为 “栏目一 > 栏目二” 这样形式的链接,title则为这种形式的标题
**文档模板:**position,phpurl,templeturl,memberurl,indexurl,indexname,specurl,id(同 ID,aid)
**文档所有内容字段:**档案#@__archives 表 和 附加表的所有字段。
flink 友情链接
**名称:**flink
**功能:**用于获取友情链接,在DedeCMS系统中已经默认集成友情链接插件,所以无需其他安装即可使用该标签。
语法:
文件:
\include\taglib\flink.lib.php
function lib_flink(&$ctag,&$refObj)
默认底层模板:
参数:
type='textall' 链接类型
row=24 链接数量
titlelen=24 站点标题文字的长度
linktype=1 链接位置内页
typeid=0 友情链接类型,默认为所有类型,可以在系统后台[模块]-[友情链接]中的“网站类型管理”中查看。
底层字段:
url,webname,logo,link
flinktype 友情链接类型
**名称:**flinktype
**功能:**用于获取友情链接类型
语法:
html
{dede:flinktype type="dedecms"}
<a href="#" _for="flink_[field:id/]">[field:typename/]</a>
{/dede:flinktype}
文件:
\include\taglib\flinktype.lib.php
function lib_flinktype(&$ctag,&$refObj)
默认底层模板:
参数:
row=24 链接类型数量
titlelen=24 链接文字的长度
底层字段:
id,typename
范例:
html
{dede:flinktype type="dedecms"}
<a href="#" _for="flink_[field:id/]">[field:typename/]</a>
{/dede:flinktype}
同时flinktype可以同flink标签进行嵌套使用,用于循环生成分类标签,类似channelarclist标签。
html
{dede:flinktype type="dedecms"}
<dd id="flink_[field:id/]">
<ul class="f5">
{dede:flink/}
</ul>
</dd>
{/dede:flinktype}
global 全局配置变量标签
**名称:**global
**功能:**获取系统全局配置变量内容
语法:
[field:global.cfg_webname/] 用于底层模板中
文件:
系统模板引擎
默认底层模板:
无
参数:
无
底层字段:
无
hotwords 搜索关键词
**名称:**hotwords
**功能:**获取网站搜索的热门关键字
语法:
文件:
\include\taglib\hotwords.lib.php
function lib_hotwords(&$ctag,&$refObj)
默认底层模板:
无
参数:
num=6 关键词数目
subday=365 调用天数以内的关键词
maxlength=16 关键词最大长度
底层字段:
无
JSON数据调用
**名称:**json
**功能:**调用某个远程连接的json接口,方便同远程站点之间进行通信来调取内容
语法:
html
{dede:json url='http://yoursite/json.php' cache=300}
[field:id/]-[field:title/]<br/>
{/dede:json}
文件:
\include\taglib\json.lib.php
function lib_json(&$ctag,&$refObj)
默认底层模板:
无
参数:
url='' 远程json接口地址
注:所传递的数据需要是UTF-8编码格式,否则可能会出现乱码。
cache=300 缓存时间,0为不缓存
底层字段:
json传递数组字段
范例:
我们首先编写一个简单的服务器端API,将其存放在系统根目录/api下,由于系统是GB2312编码,所以服务端编写的时候我们进行了一些编码转换的处理,保证服务端访问的编码是UTF-8即可。
php
<?php
$cfg_NotPrintHead = false;
header("Content-Type: text/html; charset=utf-8");
include_once (dirname(__FILE__)."/../include/common.inc.php");
error_reporting(E_ALL || ~E_NOTICE);
require_once(DEDEINC.'/json.class.php');
$reval = array();
$dsql->SetQuery("SELECT id,title FROM `#@__archives` ORDER BY id DESC LIMIT 0,10");
$dsql->Execute('me');
while ($row = $dsql->GetArray('me')) {
$row['title'] = gb2utf8($row['title']);
$reval[] = $row;
}
$json = new Services_JSON(SERVICES_JSON_SUPPRESS_ERRORS);
echo $json->encode($reval);
?>
通过地址 http://help.dedecms.com/api/arcticle.php 我们可以访问到刚才编写的服务端文件。
下面我们就可以通过标签来进行访问。
html
{dede:json url='http://help.dedecms.com/api/arcticle.php' cache=0}
[field:id/]-[field:title/]<br/>
{/dede:json}
测试标记结果如下:
如果您是想获取单条记录,可以构造如下的数组:
$row[] = $dsql->GetOne(“SELECT * FROM #@__archives WHERE id=88”);
然后将这个数组通过JSON格式化进行处理。
loop 万能调用标签
**名称:**loop
**功能:**调用任意表的数据标签
语法:
html
{dede:loop table='dede_archives' sort='' row='4' if=''}
<a href='[field:arcurl/]'>[field:title/]</a>
{/dede:loop}
文件:
\include\taglib\loop.lib.php
function lib_loop(&$ctag,&$refObj)
默认底层模板:
无
参数:
table='' 数据表名称
tablename='' 同table
row=8 调用数据的行数
sort='' 用于排序的字段
if='' 查询的条件
ifcase='' 同if
orderway='desc' 排序方式,desc降序、asc升序
底层字段:
这个标记的底层模板变量即是被查询表的所有字段
范例:
我们来查询用户id为1的用户发布的文档,可以用下面的标签来表示:
html
{dede:loop table='#@__archives' sort='mid' row='4' if='mid=1'}
<a href='[field:arcurl/]'>[field:title/]</a>([field:mid/])<br />
{/dede:loop}
查询结果如下:
loop标签同时可以查询跟DedeCMS处在同一个数据库的数据表,如果您的论坛或者商城程序安装在同一数据库,也可以使用loop标签进行调用。
memberlist 会员列表
**名称:**memberlist
**功能:**调用会员列表
语法:
html
{dede:memberlist orderby='scores' row='20'}
<a href="../member/index.php?uid={dede:field.userid /}">
{dede:field.userid /}
</a>
<span>{dede:field.scores /}</span>
{/dede:memberlist}
文件:
\include\taglib\memberlist.lib.php
function lib_memberlist(&$ctag, &$refObj)
默认底层模板:
memberlist.htm
参数:
row = '6' 调用数目
iscommend = '0' 是否为推荐会员
orderby = 'logintime' 按登陆时间排序 money 按金钱排序 scores 按积分排序
signlen=50 签名长度
底层字段:
#@__member所有字段及spacename(空间名称)、sign(用户签名)
范例:
用于调用会员相关的列表信息,我们可以在默认模板中查看\templets\default\index.htm
html
<div class="latestlogin">
<strong>最近登陆的会员</strong>
<ul class="e7">
{dede:memberlist row=6 signlen=30}
<li>
<a href="[field:spaceurl/]" target="_blank">
<img src="[field:face/]" alt='[field:spacename/]' width="52" height="52" />
[field:uname/]
</a>
</li>
{/dede:memberlist}
</ul>
</div>
<!-- /latestlogin -->
我们可以查看网站首页部分:
当然这里也可以通过指定orderby的属性来调用不同形式排序的内容。
myad 广告
**名称:**myad
**功能:**调用广告内容
语法:
文件:
\include\taglib\myad.lib.php
function lib_myad(&$ctag, &$refObj)
默认底层模板:
无
参数:
name='' 标记名称,该项是必须的属性,以下 2、3是可选属性
ismake='no' 默认是 no 表示设定的纯HTML代码, yes 表示含板块标记的代码
typeid=0 表示所属栏目的ID,默认为 0 ,表示所有栏目通用的显示内容,在列表和文档模板中,typeid默认是这个列表或文档本身的栏目ID
底层字段:
无
范例:
在系统后台可以添加一个广告
广告位标识就是广告标签的id,那么可以使用:
html
<div class="banner">
{dede:myad name='innerTopBanner1'/}
</div>
来调用出对应的广告位内容。
可以直接在广告管理页面,点击“代码”选项来获取对应的代码。
mynews 站内新闻
**名称:**mynews
**功能:**站内新闻
语法:
[field:title /]
发布人:[field:writer /]
时间:[field:senddate function='MyDate("Y-m-d H:i:s","@me")'/]
[field:body /]
文件:
\include\taglib\mynews.lib.php
function lib_mynews(&$ctag,&$refObj)
默认底层模板:
mynews.htm
参数:
row=1 调用站内新闻数
titlelen=24 新闻标题长度
底层字段:
aid,typeid,title,writer,senddate,body
范例:
系统默认已经安装了站内新闻的插件,我们直接在后台[模块]-[站内新闻]选项卡中来添加站内新闻。
我们使用下面的标签:
html
{dede:mynews row='2' titlelen=''/}
<b>[field:title /]</b>
发布人:[field:writer /]
时间:[field:senddate function='MyDate("Y-m-d H:i:s","@me")'/]<br />
{/dede:mynews}
测试后标签调用信息内容如下:
mytag 自定义宏标签
**名称:**mytag
**功能:**自定义宏标记调用标签
语法:
文件:
\include\taglib\mytag.lib.php
function lib_mytag(&$ctag, &$refObj)
默认底层模板:
无
参数:
name='' 标记名称,该项是必须的属性,以下 2、3是可选属性
ismake='no' 默认是 no 表示设定的纯HTML代码, yes 表示含板块标记的代码
typeid=0 表示所属栏目的ID,默认为 0 ,表示所有栏目通用的显示内容,在列表和文档模板中,typeid默认是这个列表或文档本身的栏目ID
底层字段:
无
范例:
可以在系统后台[模板]-[自定义宏标记]中增加一个内容,这个内容可以是一段普通的HTML,也可以是织梦的某个标签块。
这样我们可以直接使用标签:
{dede:mytag name='auto_1' ismake='yes'/}来调用上面的内容。
php php标签
**名称:**php
**功能:**执行PHP代码
语法:
php
{dede:php}
$a = "dede";
echo $a;
{/dede:php}
文件:
\include\taglib\php.lib.php
function lib_php(&$ctag, &$refObj)
默认底层模板:
无
参数:
无
底层字段:
无
范例:
注:PHP标签由于采用直接执行php代码,在使用的时候需要注意其安全性。
softmsg 软件下载提示信息
**名称:**softmsg
**功能:**调用下载说明
语法:
文件:
\include\taglib\softmsg.lib.php
function lib_softmsg(&$ctag,&$refObj)
默认底层模板:
无
参数:
无
底层字段:
无
范例:
在系统后台[系统]-[软件频道设置]中配置下载说明:
使用标签就可以调用这里的信息。
sonchannel 子栏目调用
**名称:**sonchannel
**功能:**子栏目调用标签
语法:
html
{dede:sonchannel}
<a href='[field:typeurl/]'>[field:typename/]</a>
{/dede:sonchannel}
文件:
\include\taglib\sonchannel.lib.php
function lib_sonchannel(&$ctag,&$refObj)
默认底层模板:
无
参数:
row=100 返回数目
col=1 默认单列显示
nosonmsg='' 没有指定ID子栏目显示的信息内容
底层字段:
id,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,listman
范例:
这个标签使用的时候需要注意要在某个特定栏目下才能够正常被调用。
sql SQL查询标签
**名称:**sql
**功能:**用于获取MySQL数据库内容的标签
语法:
html
{dede:sql sql='' appname='default'}
[field:title/]
{/dede}
文件:
\include\taglib\sql.lib.php
function lib_sql(&$ctag,&$refObj)
默认底层模板:
无
参数:
sql='' 需要查询的sql语句
appname='default' 这个参数在DedeCMS 5.7中有效,可以调用其他服务器或者数据库上的信息,默认为default,即当前系统所运行的数据库,可在data/tag/sql.inc.php中扩展,在DedeCMS V5.7 中用户可以通过后台[模板]-[SQL标签应用管理]来配置应用。
底层字段:
所有SQL语句查询出来的字段
范例:
我们通过下列标签来调用phpwind论坛的会员信息。
html
{dede:sql sql='SELECT uid,username,email,memberid FROM `phpwind87`.pw_members ORDER BY uid desc' appname='phpwind'}
[field:uid/]-[field:username/]<br />
{/dede:sql}
标签调试结果内容如下:
TAG调用标签
**名称:**tag
**功能:**TAG调用
语法:
html
{dede:tag sort='new' getall='0'}
<a href='[field:link/]'>[field:tag /]</a>
{/dede:tag}
文件:
\include\taglib\tag.lib.php
function lib_tag(&$ctag,&$refObj)
默认底层模板:
tag_one.htm
参数:
row=30 调用条数
sort='new' 排序方式 month,rand,week,hot,total
底层字段:
keyword,tag,link,highlight,
type 指定栏目调用标签
**名称:**type
**功能:**获取指定栏目链接
语法:
html
{dede:type}
<a href="[field:typelink /]">[field:typename /]</a>
{/dede:type}
文件:
\include\taglib\type.lib.php
function lib_type(&$ctag,&$refObj)
默认底层模板:
part_type_list.htm
参数:
typeid=0 指定栏目ID,如果没有指定则获取当前页面下的环境变量
底层字段:
id,typelink,typename,typedir,isdefault,ispart,defaultname,namerule2,moresite,siteurl,sitepath,listman
范例:
vote 投票标签
**名称:**vote
**功能:**用于获取一组投票表单,系统默认安装了投票插件,可在[模块]-[辅助插件]-[投票模块]中来添加或者获取投票标签
语法:
html
{dede:vote id='' lineheight='22' tablewidth='100%' titlebgcolor='#EDEDE2' titlebackground='' tablebgcolor='#FFFFFF'/}
{/dede}
文件:
\include\taglib\vote.lib.php
function lib_vote(&$ctag,&$refObj)
默认底层模板:
无
参数:
id=0 数字,当前投票ID
lineheight=24 表格高度
tablewidth='100%' 表格宽度
titlebgcolor='#EDEDE2' 投票标题背景色
titlebackgroup='' 标题背景图
tablebg='#FFFFFF' 投票表格背景色
底层字段:
无