织梦dedecms如何调用当前栏目的文章列表?

织梦dedecms如何调用当前栏目的文章列表?,第1张

Tags: dedecms, dedecms标签, dedecms模板dedecms的Field 标记在封面模板、列表模板、文档模板的使用频率很高,实用。主要用来获得特定栏目或档案的字段值及常用的环境变量值,其用法比较灵活。可以直接展示数据, 如调用position,得到栏目一 > 栏目二” 这样形式的链接;或者,调用title得到当前文档的标题。一:Field标签使用说明

Arclist 标记的使用范围是:封面模板(如:index_articlehtm)、列表模板(如:list_articlehtm)、文档模板 (如:article_articlehtm)。 即对应templets\default\文件夹下的index_识别IDhtm模板、list_识别IDhtm模板、article_识别 IDhtm模板。

注意: 封面模板与列表模板是有区别的,但调用Field 标记可以相同; 封面模板有不同的类型,我们最常用的是文章模板(index_articlehtm),其它的还有模板 (index_imagehtm),简介模板(index_infohtm),软件模板(index_softhtm)等等,这些模板调用 Field 标记的道理都是一样的。

二、Field标签测试实例新建一个文件(如:testindexhtml)放到templets/default下,然后将列表栏目的模板文件指定为新建的文件(testindexhtml)然后更新相应栏目的HMTL,点击主页上的相应栏目即可显示相应的调用信息。testindexhtml文件的Field 标记调用代码: <font color="red">调用position标记,得到:栏目一 > 栏目二” 这样形式的链接:</font>{dede:field name='position'/}<br/> <font color="red">插件路径:</font>{dede:field name='phpurl'/}<br/> <font color="red">模板路径:</font>{dede:field name='templeturl'/}<br/> <font color="red">版权信息:</font>{dede:field name='powerby'/}<br/> <font color="red">主页路径:</font>{dede:field name='indexurl'/}<br/> <font color="red">主页名称:</font>{dede:field name='indexname'/}<br/> <font color="red">站点名称:</font>{dede:field name='webname'/}<br/> <font color="red">所在栏目:</font>{dede:field name='title'/}<br/>

{dede:channel type="son" typeid='8'}

<a href="[field:typeurl/]" [field:global name=autoindex runphp="yes"](@me==1) @me="class=on hover":@me="class=on";[/field:global]>[field:typename/]</a>

{/dede:channel}

上面代码加上我字体加粗的部分代码就可以实现了,不懂可以追问我

方法和详细的操作步骤如下:

1、第一步,打开织梦Dedecms的主界面,直接找到“增加顶级栏目”选项并选择跳转,见下图,转到下面的步骤。

2、第二步,执行完上面的操作之后,进入新对话框,根据实际情况进行设置,见下图,转到下面的步骤。

3、第三步,执行完上面的操作之后,请单击“确定”按钮,见下图,转到下面的步骤。

4、第四步,执行完上面的操作之后,可以调用当前栏目的文章列表,见下图。这样,就解决了这个问题了。

参考下面方法

首先,打开后台——模板——默认模板管理——indexhtm

看到有一句,

rel="stylesheet" media="screen" type="text/css" />说明,模板是根据这个 CSS 来布局网

页的,于是就打开网站目录下面的templets\style\dedecmscss然后来分析一下CSS的构成。

根据主页的调用,来研究 CSS 这样容易理解。打开主页模板,找到:

那么 w960 center clear mt1 都定义了什么呢?打开 DEDECMSCSS 找打相关的定义。

center{

1 margin:0px auto; 定义了CSS 模块的边缘位置都是 0,也就是这个center 的层

距离上右下左都是 0px;

2 }

3 w960{

4 width:960px; 定义了整体的宽度为 960px;

5

6 }

7 pright infos_userinfo {

8 margin-bottom: 0px; 定义了首页右部下的互动中心的下面边缘为 0px;

9 }

10 mt1{

11 margin-top:8px; 定义了mt1 的顶部边缘为8px;

12 }

13 pright mt1{

14 margin-top:0px; 定义了pright 下面的mt1 顶部边缘为0px;

15 }

16 mt2{

17 margin-top:16px; 顶部边缘为16px;

18 }

19 clear{

20 overflow:hidden; 如果clear 层里面的内容超出了 层的范围 就隐藏起来。

21 }

这个pleft 的定义没有在dedecmscss 中,但是会发现一句

@import url("layoutcss");

@import url("pagecss");

这说明,在dedecmscss 中引用了 pagecss 和layoutcss 这两个样式表,于是就在

pagecss 中找到了pleft 的定义

pleft{

width:712px;定义了宽度

float:left;该层向左浮动

overflow:hidden;超出范围则隐藏

}

在该层下面调用的是新闻头条的内容,看看它的 css

index bignews{

width:424px;

height:400px;

float:right; 向右浮动

border:1px solid #DFF2F5;表示边框线用 #dff2f5 的实体颜色填充

background:url(/images/headbg-topgif) repeat-x;背景为 headbg-topgif 并且横

向平铺

overflow:hidden;超出则隐藏。

}

所以,看到头条的这部分是在 flash 幻灯片右边显示,并且加上了浅蓝色的边框线。

再来看看 onenews 是如何定义的。

index bignews onenews{

margin:0 3px 0 3px; 左右外边距分别空3 个像素

padding:7px 6px;上左内边距分别空7,6 个像素

border-bottom:1px dashed #EBEBEB;下边框加一个 #ebebeb 的虚线

}

所以看见头条的文章左右都有一定的距离,并且下面还有一个虚线显示

这个下面调用的是以往的头条,默认的有 4 篇文章,调用了d1 d1arc 2 个css

index bignews divd1{

padding:6px 10px;

clear:both;这句话是清除浮动,如果不加它,大家可以试试看,是不是 d1 这个层就跑到 头条的

右边了。

width:406px;

overflow:hidden;

}

index bignews divd1arc{

margin-right:12px;

width:190px;

float:left;因为此时要调用4 篇文章,改文章是 22 排列的,如果不加这个属性,新闻就应该垂

直排列了(因为刚才用 clear:both 清除浮动啦),大家试试看是不是这样的。

height:24px;

line-height:24px;行间距,即字体最底端与字体内部顶端之间的距离

overflow:hidden;

}

最新文章

下面看看 newarticle 这个css 吧,还是拿快学网的首页举例子,上面的这句是用来显示 “最近

更新”那几个绿颜色字的,看看它是怎么定义的。

index bignews divnewarticle{

height:24px; 高度

background:url(/images/new-articlegif) 8px 3px no-repeat;背景在x 轴8px 和y 轴

3px 出出现

font-size:0px;

color:#fff;

} 所以,能看到那个最近更新并且还有一个横条,其实它是个,大家右键另存为

看看就知道了

这里面调用了 c2 和ico1 两个 css

index bignews ulc2{

width:416px;

padding:0px 4px 0px; 内边距为 上0 右4 下0

clear:both;清除浮动 和上面的意思一样

overflow:hidden;

}

ico1 这个css 在layoutcss 中了。

ico1 li{

padding-left:16px; 指的是 新闻列表左内边距为 16px

background:url(/images/ico-1gif) 7px 11px no-repeat; 背景在7px,11px 处出现,所以看到最新文章的列表左边都有一个小黑点,这个小黑点就是 ico-1gif

}

到此,中部的头条新闻和最近更新已经分析完了。

看看flash 的 css 定义

index flashnews{

width:280px;

height:192px;

overflow:hidden;

float:left;这句决定了,flash 的新闻列表在 头条的左边显示。如果把 bignews 和flashnews

的float 属性互换一下应该是上面结果呢?大家试试看。

}

这边是特别推荐调用的样式,还是来看看 css

index latestnews{

width:280px;

height:200px;

margin-top:8px;

float:left;

}

index latestnews dl dd{

padding:2px 5px;

}

index latestnews ul a{

color:#555;

} 这里面就不用解释了吧,可以和上面的对照一下就能明白上面意思了。关键 dl dt dd 要弄明白

是什么意思。

dl 内容块

dt 内容块的标题

dd 内容

可以这么写:

标题

内容1

内容2

在layoutcss 中找到 tbox 的相关定义,其他的都不用罗嗦了,只有一句大家注意看一

tbox dt strong{

height:26px;

line-height:26px; !important;line-height:25px; 这一句是为了兼容 IE 和FF,比如

font-size: 12px !important;

font-size: 13px;

在 IE里面,由于 IE不理解 !important,则字体大小按照最后设定的 13px 展示

而FF 里面, !important 为提高优先级别,则字体大小按照 !important标记的12px 展示

某些css 某些代码在这两类浏览器里的显示是有差别的(注意这也是使用!important 的主要原因

所在),比如height: 21px;,在 IE6 和(IE7,FF)里显示就有差别,后者(IE7,FF)会比前

者(IE6)少一个像素。

padding-left:22px;

padding-right:4px;

display:block;//变成块级 ,因为strong 是内联元素,必须强制转换,不然的话是没有办法

定义padding 的。大家可以百度一下 内联元素看看。

float:left;

color:#397CBE;

background:url(/images/fbicogif) 5px 6px no-repeat;

letter-spacing:1px;

}

参考dedecms的帮助文档中的arclist标签

标签名称:arclist

标记简介:织梦常用标记,也称为自由列表标记,其中imglist、imginfolist、specart、coolart、autolist都是由该标记所定义的不同属性延伸出来的别名标记。

功能说明:获取指定文档列表

适用范围:全局使用

基本语法:

{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='' 分多少列显示(默认为单列),53版中本属性可以通过多种方式进行多行显示

如果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' 标题长度 等同于titlelength

infolen='160' 表示内容简介长度 等同于infolength

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='' 指定文档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='天数' 表示在多少天以内的文档

用arclist调用于附加表字段的方法:

要获取附加表内容,必须符合两个条件

1、指定 channelid 属性

2、指定要获得的字段 addfields='字段1,字段'

如:

{dede:arclist addfields='filetype,language,softtype' row='8' channelid='3'}

[field:textlink /] - [field:softtype /]<br />

{/dede:arclist}

底层模板字段:

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"格式)

其中:

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/]

如:

{dede:arclist infolen='100'}

[field:textlink/]

<br>

[field:infos/]

<br>

{/dede:arclist}

注:底层模板里的Field实现也是织梦标记的一种形式,因此支持使用PHP语法,Function扩展等功能。

如: 给当天发布的内容加上 (new) 标志

[field:senddate runphp='yes']

$ntime = time();

$oneday = 3600 24;

if(($ntime - @me)<$oneday) @me = "<font color='red'>(new)</font>";

else @me = "";

[/field:senddate]

找到searchphp这个文件,修改!

找到里面有这个标题搜索,和智能搜索的,将其中的2个代码位置调换下就可以了,后面的字你可以改成自己想要的即可!不明白的HI我,或者百度飞鹿优化,找里面的教程

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 织梦dedecms如何调用当前栏目的文章列表?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情