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

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

为什么要分享?因为织梦的一些技术问题,在织梦官网论坛很难找到解决方法,论坛提问一般无人回答,下面遇到的有些问题我自己都花费了很长时间才解决。

特别提醒:优化要适度,自然,以提高用户体验为主。

以下经验和技巧,有些为本人修改,有些网上收集,全部放在这里集中,有需要的可以直接全部拿去,也欢迎网友完善。

1、随机文章:好处就在于能够保证文章有新鲜内容,但前提是你必须要有一定文章数量,50篇以下的就不要用了,请将换成你的域名。

调用代码:

复制代码

   

代码如下:

{dede:arclist titlelen=30 orderby=rand row=8 typeid=rand}

   lia href=""/a/li

   {/dede:arclist}

2、翻页标题重复问题:dedecms列表页假如有多页的话,标题都是一样的,到57版本仍然没有改进(希望官方在下一个版本改进)。其实最简单的就是加个第一页第二页即可。

   修改代码:在列表页模板中将原来的标题调用标签{dede:fieldtitle/}换成{dede:fieldtitle/}_第 {dede:pagelistlistsize=0listitem=pagenofunction=html2text(@me)/}页 -{dede:globalcfg_webname/},会生成“标题_第1页-网站名称”之类的标题。

3、自动关键字:从53起,系统就一直自动带这个功能,只不过很多人不知道怎么用而已。这是一个非常强大的功能。使用方法如下:

设置步骤:后台的“核心”→“批量维护”→“文档关键词维护”,新增关键字并同时加上要链接的网址即可。尽量避免重复,要精准单一,假如你给“兼职” 设置了一个链接,给“兼职网站”又加了一个,56以后的版本系统只会自动给兼职网站加,但以前的版本就会给兼职网站同时加上两个链接,请注意自己的使用的版本。

这里设置好了以后,还要需要再设置一个地方。后台的“系统设置”→“系统基本参数”→“其它选项”→“文档内容同一关键词替换次数(0为全部替换)”默认是2。这个可以根据自己的情况适当的调整。

4、相关文章设置:相关文章设置是有效提高用户体验的一种方法哦。57以后的系统自动带了这个功能了,以前的版本要自己添加。这个要注意一点的就是,相关文章的调用是根据tag标签或者关键字来调用的,假如你发表的文章这两个位置都没有设置的话,相关文章里面不会有内容的,因此,一定要设置一个。

5、dedecms调用wp博客文章:很多人用dedecms作主站,用wp搭建二级目录的博客,如何在dedecms中调用wp的文章,这个我花费了很长时间才调试好,前提是wp启用了固定链接,下面的例子是数字链接,调用的是博客内的最新文章,将域名换成你自己的就行了。

调用代码:

   {dede:sql sql=select id as post_id from wp_posts where post_status=publishand post_type=post order by id desc limit 0,10}

   li class=dotlinea href=

   {/dede:sql}

6、谷歌地图:谷歌地图对于谷歌收录帮助非常之大,57版自带谷歌地图了。

设置步骤:后台的“核心”→“频道模型”→“自由列表管理”,简单设置更新即可,这里要特别注意一点的是,系统自动生成不带首页和列表页这关键的几页(不知道是不是官方的失误),只有文章页,请在模板googlemaphtm自己加上。

7、首页调用问答模板文章:开通了问答模块的,首页应该如何调用呢?这个我调式了很久,虽然现在没用了,但可能有网友有用:

调用代码:

   {dede:askrow=‘14’qtype=‘ok’orderby=‘pubdate’}

   liahref=/ask/question-id-[field:id/]htmltarget=_blank[field:title/]/a/li

   {/dede:ask}

打开/include/taglib/asklibphp文件;修改 elseif($qtype==ok)$qtypeQuery=$tidstatus=1orderbysolvetimedesc;这条语句的 orderbyXXXXXdesc,把XXXX换成你要排序的字段就OK了。

8、适当优化:将当前位置的“主页”字样,改为“你自己的网站名称”。解释:学习过SEO的朋友一看就知道为什么了,增加内链,另一个好处就是利用回首页的关键词连接告诉蜘蛛,你的网站定位。其实这点真的很重要。

如何修改:在“系统参数设置”的主页链接输入“你的网站名称”即可,然后重新生成html。

9、全站RSS输出:织梦自带的rss和网站地图一样的,是按照栏目来分类的,不方便别人订阅。这个代码很长,自行去网上搜下,注意下就行了。

10、新窗口打开文章:小技巧,这个最简单的方法就是在把加入到headhtm这个模板的区域里里就行了,对其它cms一样实用哦,这样就不用每个链接都去设置了,一劳永逸。

以上内容,是本人3年多年使用织梦的经验,有些来自于网络,有些自己修改调试了很长时间,花费了很大的心血,现在分享出来,希望对正在或者即将使用dedecms建站的朋友有帮助。也欢迎大家分享更多经验。

调用方法:

{dede:channelartlist typeid='top'}

这里是typied='top',这个top值可以换为你想要的上级栏目ID,但绝对是不可以为空的。

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

Tag标签是web20的东西,相当于关键词。我们在使用dedecms的时候应该如何在文章内容页添加TAG标签功能呢Tag标签对于SEO帮助很大,具体修改方法有以下2种方法:

方法一:打开文章模板文件article_articlehtm;在{dede:fieldbody/}后面添加以下代码:

<div>

TAG标签:{dede:tag row='30' sort='new' getall='0'} <a href='[field:link/]'>[field:tag /]</a>{/dede:tag}

</div>

更新生成文档页,再查看效果。

方法二:织梦dedecms文章页调用Tag标签比较简单,1、找到文章模板在{dede:fieldbody/}后面加入{dede:fieldtags/}这个标签即可。但是织梦dedecms默认的Tag标签是没有链接的,接下来进行第二步。

2、给Tag标签加超链接

大家找到网站跟目录下的/include/helpers/archivehelperphp,找到120行左右。

if ( ! function_exists('GetTags'))

{

function GetTags($aid)

{

global $dsql;

$tags = '';

$query = "SELECT tag FROM `dede_taglist` WHERE aid='$aid' ";

$dsql->Execute('tag',$query);

while($row = $dsql->GetArray('tag'))

{

$tags = ($tags=='' $row['tag'] : ','$row['tag']);

}

return $tags;

}

}

替换成以下代码:

if ( ! function_exists('GetTags'))

{

function GetTags($aid)

{

global $dsql;

$tags = '';

$query = "SELECT tag FROM `dede_taglist` WHERE aid='$aid' ";

$dsql->Execute('tag',$query);

while($row = $dsql->GetArray('tag'))

{

$tags = ($tags=='' ''$row['tag']'': ',''

'$row['tag']''); }

return $tags;

}}

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

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情