dedecms 标签调用 首页及列表页面 文章列表调用标签

dedecms 标签调用 首页及列表页面 文章列表调用标签,第1张

修改arclist标签的asc属性。

具体代码如下:

{dede:arclistorderway=''asc'}

文章按照顺序排列

{/dede:arclist}

解析原因:

orderway=''值为desc或asc,指定排序方式是降序还是顺向排序,将值修改asc就是顺序排列。

扩展资料

其他属性

1、typeid=''表示栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;

2、row=''表示返回文档列表总数;

3、col=''表示分多少列显示(默认为单列);

4、titlelen=''表示标题长度;

5、infolen=''表示内容简介长度;

6、imgwidth=''表示缩略图宽度;

7、imgheight=''表示缩略图高度;

8、type=''表示档案类型,其中空值、不使用这个属性或type='all'时为普通文档

参考资料:

:arclist

dedecms织梦网站搜索不分大小写的问题

测试版本为织梦V57版本,编码为GBK,在使用其搜索模块时,出现了关键字不认大写字母的情况,如下图所示,例如关键字为"Abc"

追踪其源码在"/include/helpers/filterhelperphp"中第133行找到其函数"FilterSearch"

if ( ! function_exists('FilterSearch')){

function FilterSearch($keyword) {

global $cfg_soft_lang;

if($cfg_soft_lang=='utf-8') {

$keyword = preg_replace("/["$><']/", '', $keyword);

if($keyword != stripslashes($keyword)) {

return ''; }

else {

return $keyword; }

} else

{ $restr = '';

for($i=0;isset($keyword[$i]);$i++)

{ if(ord($keyword[$i]) > 0x80) {

if(isset($keyword[$i+1]) && ord($keyword[$i+1]) > 0x40) {

$restr = $keyword[$i]$keyword[$i+1]; $i++; } else

{ $restr = ' '; }

} else

{if(preg_match("/[^0-9a-z@#]/",$keyword[$i]))

----------将这里改为"if(preg_match("/[^0-9a-zA-Z@#]/",$keyword[$i]))"即可

{

$restr = ' '; }

else { $restr = $keyword[$i]; } } } } return $restr;

OK了,问题解决了!

参考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]

dedecms 网站调用导航栏目和下拉菜单的方法如下:

织梦开源程序(dedecms)是一个很不错的开源程序,功能十分的强大,只是默认的模板就有很不错的用户体验效果。而还有很多的不完美的地方,就需要我们自己去做一下修改,譬如默认导航条上面没有下拉列表的功能,今天我就来帮助大家解决一下怎样制作织梦导航下拉列表。

其实这个导航条上面显示下拉列表还是蛮简单的,即使你不懂代码知识也是可以操作的,下面跟着步骤走,就能很轻松的实现啦。

首先我们将将下面这段红色的代码贴到"网站根目录\templets\default\"的"footerhtm"文件里里面,一般来说把这段代码放在最下面就行了。

<!-- //放于底部即可-->

<script type='text/javascript' src='{dede:globalcfg_cmsurl/}/images/js/dropdownjs'></script>

{dede:channelartlist typeid='top' cacheid='channelsonlist'}<ul id="dropmenu{dede:fieldtypeid/}" class="dropMenu">

{dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]">[field:typename/]</a></li>

{/dede:channel}

</ul>

{/dede:channelartlist}

<script type="text/javascript">cssdropdownstartchrome("navMenu")</script>

接着我们重新生成网站首页,再打开首页刷新一下就会发现你的网站导航栏已经出现下拉菜单了,只是背景还是透明的,原因是没有背景。这时候我们只需要再加一张我们喜欢的背景就好看多了。

可是头疼的是,这个下拉菜单是透明的!咋么办??

加背景的办法

我们把织梦DedeCMS程序文件夹\dede\img里的mmenubggif(绿色背景,适用于绿色主题模板)或者DedeCMS程 序文件夹\templets\images里的mmenubggif(蓝色背景,适用于蓝色主题模板)复制到DedeCMS程序文件夹 /templets/default/images下面,现在你再看一下效果,导航栏是不是已经出现熟悉的下拉菜单了。

如果还想有更好的效果展示的话,我们就需要去手工修改/templets/default/style/dedecmscss里面的文件了,不过这得需要一点css知识哦~

修改css的话,我们可以在里面使用"ctrl+f"寻找 dropMenu 进行修改即可。

1编辑器打开plusdiyphp

2在40行左右找到此行代码:

$dede_fields=empty($dede_fields)'':trim($dede_fields);

3在这一行代码之下,加入代码,复制的话删掉代码中的空行

//增加必填字段判断

if($required!=''){

if(preg_match('/,/',$required))

{

$requireds=explode(',',$required);

foreach($requiredsas$field){

if($$field==''){

showMsg('带号的为必填内容,请正确填写','-1');

exit();

}

}

}else{

if($required==''){

showMsg('带号的为必填内容,请正确填写','-1');

exit();

}

}

}

//end

4保存完成后,在表单模版页面找到这行代码:

<formaction="/plus/diyphp"enctype="multipart/form-data"method="post">

在这行代码之下,加入代码:

<inputtype="hidden"name="required"value="数据字段名,数据字段名"/>

注意这行代码要修改下,根据你的表单所需要设置的必填项,例如设置“姓名”、“邮箱”为必填项

添加新字段--“表单提示文字”:姓名--“字段名称”:name

添加新字段--“表单提示文字”:邮箱--“字段名称”:email

此行代码应为:

<inputtype="hidden"name="required"value="name,email"/>

这样就把这两个选项设置为必填项了,如果没有填写就提交,会打开窗口提示“带号的为必填内容,请正确填写”,当然,这一句话可以改成其它的文字

网上看到另一种方法,未测试,仅作为资料收藏

js方法:

1先在要发布表单的模板上加

<scriptsrc='你的路径/jsjs'type="text/javascript"></script>

2在你自定义的路径新建文件jsjs,然后复制以下内容粘贴保存,代码:

<!--

$(document)ready(function()

{

//验证

$('complain')submit(function()

{

if($('name')val()==""){

$('name')focus();

alert("用户名不能为空!");

returnfalse;

}

if($('tel')val()=="")

{

$('tel')focus();

alert("联系电话不能为空!");

returnfalse;

}

if($('title')val()=="")

{

$('title')focus();

alert("标题不能为空!");

returnfalse;

}

if($('text')val()=="")

{

$('text')focus();

alert("具体内容不能为空!");

returnfalse;

}

})

});

-->

注:

$('complain')submit(function()//complain为自定义表单的ID,如果生成的表单没有可以自行加上,即id="complain"

if($('name')val()==""){

$('name')focus();//name为要验证表单中的ID,如想让用户名不能为空,在后台用户名的数据字段名设为name,下同

3设置好后更新就可以看到效果了

希望本文所述对大家的dedecms建站有所帮助。

织梦dedecms的简略标题功能还是挺方便的,为我们站长考虑了很多,有些新闻站点需要长标题和简略标题,目前的调用只能同时调用一种标题方式,不过可以采用一下方法,进行判断,无简略标题显示完整标题。例如织梦早期版本中的"有来源显示来源,无来源不显示"、"有作者显示作者,无作者不显示"。

方法一:

{dede:field name='array' runphp='yes'} if (@me['shorttitle']=='') @me=@me['title'];else @me=@me['shorttitle'];{/dede:field}

这个可以使用,但是这个不能在 {dede:arclist} 标签中套用。

 方法二:

[field:array runphp='yes'] if (@me['shorttitle']=='') @me=@me['title'];else @me=@me['shorttitle'];[/field:array]

这个方法可以在{dede:arclist}标签中套用。

dede:global ,dede field标签一样的。

区别:

{dede:fieldtitle}:

一般是在文章页调用的标题标签,显示文章的标题,全局都可以使用。 这个标签通常用在页面的head中。

基本语法:

<head><title>{dede:fieldtitle}</title></head>。

dede:global :

是全局变量  例如后台基本参数中的站点根网址,{field:title/] :是列表页底层模板标签,需要配合{dede:list}{/dede:list}或者{dede:arclist}{/dede:arclist}一起使用。

基本语法:

{dede:list pagesize="10"}

<li>[<b>[field:typelink/]</b>]<a href="[field:arcurl/]" >[field:title/]</a></li>

{/dede:list}

扩展资料:

Field类

获得Field

1、Field[] fs=cgetFields();

//获得公有属性(只能是公有的)//可以是父类的公有的属性

2、Field[] fs2=cgetDeclaredFields();

//获得所有属性(全部类型的修饰符属性均可获得)

3、Field fs3=cgetField(String FieldName);

//获得指定名字的公有属性(只能是公有的)

4、Field fs4=cgetDeclaredField(String FieldName);

//获得指定名字的属性(全部类型的修饰符的属性中指定名字)

1、标签名称:adminname

功能说明:

获得责任编辑名称

使用实例:

{dede:adminname /}

2、标签名称:arclist

功能说明:

文章列表调用标记

使用实例:

{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版中本属性无效,要多列显示的可用div+css实现

row='10' 返回文档列表总数

typeid='' 栏目ID,在列表模板和档案模板中一般不需要指定,在封面模板中允许用","分开表示多个栏目;

titlelen = '30' 标题长度 等同于titlelength

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

imgwidth='120' 缩略图宽度

imgheight='90' 缩略图高度

listtype='all' 栏目类型(顶级栏目??)

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='' 起始,结束 表示限定的记录范围(如:limit='1,2')

flag = 'h' 自定义属性值:头条[h]推荐[c][p]幻灯[f]滚动[s]跳转[j]图文[a]加粗

noflag = '' 同flag,但这里是表示不包含这些属性

orderway='desc' 值为 desc 或 asc ,指定排序方式是降序还是顺向排序,默认为降序

subday='天数' 表示在多少天以内的文档

3、标签名称:arclistsg

功能说明:

单表模型的文章列表调用标记

使用实例:

{dede:arclistsg flag='h' typeid='' row='' col='' titlelen='' orderway='' keyword='' limit='0,1'}

<a href='[field:arcurl/]'>[field:title/]</a>

{/dede:arclistsg}

参数说明:

col='' 分多少列显示(默认为单列),53版中本属性无效,要多列显示的可用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]加粗

subday='天数' 表示在多少天以内的文档

4、标签名称:autochannel

功能说明:

按排序位置的获取单个栏目的链接信息

使用实例:

{dede:autochannel partsort='' typeid=''}{/dede:autochannel}

参数说明:

partsort = '0' 栏目所在的排序位置

typeid = '0' 指定的父栏目

5、标签名称:channel

功能说明:

获取栏目列表标签

使用实例:

{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}

参数说明:

typeid = '0' 栏目ID

reid = '0' 上级栏目ID

row = '100' 调用栏目数

col = '1' 分多少列显示(默认为单列)

type = 'son' son表示下级栏目,self表示同级栏目,top顶级栏目

currentstyle = '' 应用样式

6、标签名称:channelartlist

功能说明:

获取当前频道的下级栏目的内容列表标签

使用实例:

{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}

参数说明:

typeid = '0' 频道ID,多个请用","分隔

row = '20' 获取的栏目返回值

其他说明:

除了宏标记外,channelArtlist 是唯一一个可以直接嵌套其它标记的标记,不过仅限于嵌套

{dede:type}{/dede:type} 和 {dede:arclist}{/dede:arclist} 两个标记。

7、标签名称:demotag

功能说明:

这仅是一个演示标签

使用实例:

{dede:demotag /}

8、标签名称:feedback

功能说明:

调用最新评论

使用实例:

{dede:feedback}

<ul>

<li class='fbtitle'>[field:username function="(@me=='guest' '游客' : @me)"/] 对 [field:title/] 的评论:</li>

<li class='fbmsg'> <a href="plus/feedbackphpaid=[field:aid/]" class='fbmsg'>[field:msg /]</a></li>

</ul>

{/dede:feedback}

参数说明:

row='12' 调用评论条数

titlelen='24' 标题长度

infolen='100' 评论长度

9、标签名称:flink

功能说明:

友情链接

使用实例:

{dede:flink row='24'/}

参数说明:

type='image' 或textall,链接,text文字链接;

row='24' 链接数量

titlelen='24' 站点文字的长度

linktype='1' 链接位置(首页,内页)

typeid='0' 所有类型

10、标签名称:hotwords

功能说明:

获取网站搜索的热门关键字

使用实例:

{dede:hotwords /}

参数说明:

num='6' 关键词数目

subday='365' 天数

maxlength='16' 关键词最大长度11、标签名称:infoguide

功能说明:

分类信息的地区与小分类搜索

使用实例:

{dede:infoguide /}

12、标签名称:likepage

功能说明:

单页文档相同标识调用标签

使用实例:

{dede:likepage likeid='' row=''/}

参数说明:

row = '' 调用条数

likeid = '' 标识名

13、标签名称:likesgpage

功能说明:

单页文档调用标签

使用实例:

{dede:likespage row=''/}

参数说明:

row = '' 调用条数

14、标签名称:loop

功能说明:

调用任意表的数据标签

使用实例:

{dede:loop table='dede_archives' sort='' row='4' if=''}

<a href='[field:arcurl/]'>[field:title/]</a>

{/dede:loop}

参数说明:

table = '' 查询表名

sort = '' 用于排序的字段

row = '' 返回结果的条数

if = '' 查询的条件

15、标签名称:memberinfos

功能说明:

文档关连的用户信息

使用实例:

{dede:memberinfos /}

参数说明:

无属性,支持 innertext

16、标签名称:memberlist

功能说明:

会员信息调用标签

使用实例:

{dede:memberlist orderby='scores' row='20'}

<a href="/member/indexphpuid={dede:fielduserid /}">{dede:fielduserid /}</a>

<span>{dede:fieldscores /}</span>

{/dede:memberlist}

参数说明:

orderby = 'scores' 按积分排序

row = '6' 调用数目

17、标签名称:myad

功能说明:

广告调用

使用实例:

{dede:myad name=''/}

参数说明:

typeid='0' 投放范围,0为全站

name='' 广告标识

18、标签名称:mynews

功能说明:

站内新闻调用标签

使用实例:

{dede:mynews row='' titlelen=''/}

参数说明:

row='1' 调用站内新闻数

titlelen='24' 新闻标题长度

19、标签名称:mytag

功能说明:

自定义宏标记调用标签

使用实例:

{dede:mytag typeid='0' name=''/}

参数说明:

typeid = '0' 栏目ID 0为全站栏目

name = '' 标记名

20、标签名称:softmsg

功能说明:

下载说明标签

使用实例:

{dede:softmsg /}

21、标签名称:sonchannel

功能说明:

子栏目调用标签

使用实例:

{dede:sonchannel}

<a href='[field:typeurl/]'>[field:typename/]</a>

{/dede:sonchannel}

参数说明:

row ='100' 返回数目

col = '1' 默认单列显示

22、标签名称:sql

功能说明:

SQL标签

使用实例:

{dede:sql sql=''}

[field:title/]

{/dede}

参数说明:

sql='' 完整的SQL语句

23、标签名称:tag

功能说明:

TAG调用标签

使用实例:

{dede:tag row='30' sort='new'/}

参数说明:

row='30' 调用条数

sort='new' 排序方式 month,rand,week

24、标签名称:type

功能说明:

指定的单个栏目的链接标签

使用实例:

{dede:type}

<a href="[field:typelink /]">[field:typename /]</a>

{/dede:type}

参数说明:

typeid='' 指定栏目ID

25、标签名称:vote

功能说明:

投票标签

使用实例:

{dede:vote id='' lineheight='22' tablewidth='100%' titlebgcolor='#EDEDE2' titlebackground='' tablebgcolor='#FFFFFF'/}

参数说明:

id='' 数字,当前投票ID

lineheight='24' 表格高度

tablewidth='100%' 表格宽度

titlebgcolor='#EDEDE2' 投票标题背景色

titlebackground=''

tablebg ='' 投票表格背景色

为了更方便修改样式,建议在后台->辅助插件->投票管理,直接复制生成的HTML代码来使用 《 幻为您专业解答》

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dedecms 标签调用 首页及列表页面 文章列表调用标签

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情