我想要在dedecms里面实现以下功能,请大神帮我写一段代码,用dedecms标签或者自定义标签。

我想要在dedecms里面实现以下功能,请大神帮我写一段代码,用dedecms标签或者自定义标签。,第1张

wwwvpinchacc

标签名称:arclist标记简介:织梦常用标记,也称为自由列表标记,其中imglist、imginfolist、specart、coolart、autolist都是由该标记所定义的不同属性延伸出来的别名标记。功能说明:获取指定文档列表适用范围:全局使用基本语法:{dede:arclist flag='h' typeid='' row='' col='' titlelen='' infolen='' imgwidth='' imgheight='' listtype='' orderby='' keyword='' limit='0,1'}[field:title/]{/dede:arclist}参数说明:col='' 分多少列显示(默认为单列),53版中本属性可以通过多种方式进行多行显示如果col='1'要多列显示的可用div+css实现以下为通过div+css实现多列的示例:div{width:400px;float:left;}{dede:arclist row='10' titlelen='24' orderby='pubdate' idlist='' col='2'}[field:textlink/]([field:pubdate function=MyDate('m-d',@me)/])

{/dede:arclist}当col>1将使用原来的table多列方式显示row='10' 返回文档列表总数typeid='' 栏目ID,在列表模板和档案模板中一般不需要指定,在首页模板中允许用","分开表示多个栏目;getall='1' 在没有指定这属性的情况下,在栏目页、文章页模板,不会获取以","分开的多个栏目的下级子类titlelen = '30' 标题长度 等同于titlelengthinfolen='160' 表示内容简介长度 等同于infolengthimgwidth='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 频道IDlimit='起始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='天数' 表示在多少天以内的文档

wwwncms8cc

wwwvrgzxcc

{dede:tag sort='new' getall='0'}<a href='[field:link/]'>[field:tag /]</a>{/dede:tag}参数说明:row='8' 调用条数

sort='new' 排序方式 month,rand,weekgetall='0' 获取类型 0 为当前内容页TAG标记,1为获取全部TAG标记

是用 row 的 不是 limit

在\dede\include\extendfuncphp文件中添加如下函数:

function getArticleList($category=0,$order="",$limit="0,200"){

global $dsql;

$query = "SELECT arc,tptypedir,tptypename,tpcorank,tpisdefault,tpdefaultname,tpnamerule,

        tpnamerule2,tpispart,tpmoresite,tpsiteurl,tpsitepath

        FROM `#@__archives` arc LEFT JOIN `#@__arctype` tp on arctypeid=tpid

        where tpid=$category";

//此sql语句我只加了where判断文章所属分类

//其他的order limit 你根据需要自己添加

$dsql->SetQuery($query);

$dsql->Execute('lit');

$arr = array();

$cnt = 0;

$str = "";

while ($row = $dsql->GetArray('lit')) {

if($cnt%4 == 0){

$str = "<div class='css1'>";

}

if($cnt%4 > 0){

$class = "css3";

}else{

$class = "css2";

}

$str = "<span class='"$class"'>"$row['title']"</span>";

$cnt++;

if($cnt%4 == 0){

$str = "</div>";

}

//$row中可用的常用字段如下:$row['id'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'], row['arcrank'],$row['namerule'],$row['typedir'],$row['money'],$row['filename'],$row['moresite'],$row['siteurl'],$row['sitepath']

}

return $str;

}

然后在模板中使用 

{dede:field name='typeid' function="getArticleList(@me)" /}

将分类的id传给此函数就可以调用到数据,输出就是你要的格式。

输出内容你修改下php文件,常用字段都给你写在注释里了。

如果可以请也将我昨天给你回答的采纳一下。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 我想要在dedecms里面实现以下功能,请大神帮我写一段代码,用dedecms标签或者自定义标签。

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情