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

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

调用微缩图

<ul> {dede:arclist typeid='22' row='4' titlelen='20' orderby='id' imgwigth='60' imgheight='60' type='image' }

<li><img src="[field:litpic/]" width="114" height="100" /><br><a href='[field:arcurl/]'>[field:title/] </a>

</li>{/dede:arclist}</ul>

织梦TAG静态化需要插件,需要修改的文件还蛮多的!网上很多人把插件改来改去,都改的不成样子了!

一、说明:本修改适用56,57 GBK,可以生成网站所有TAG列表的静态网页文件,还有生成tag的首页静态文件。

      修改前,请备份相关的原始文件。

二、修改步骤:

1、在DEDE网站根目录,建立“tag”目录(小写)

2、在DEDE后台SQL运行器里,执行以下一条SQL:

   ALTER TABLE `#@__tagindex` ADD `maketime` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0';

3、增加文件:

templets/default/list_taghtm  //可从文章列表页复制修改

templets/default/index_taghtm  //可从taghtm复制

dede/makehtml_tag_action_listphp

dede/makehtml_tag_action_indexphp

dede/makehtml_tagphp

dede/templets/makehtml_taghtm

include/arctaghtmlclassphp

4、修改文件:

 dede/inc/inc_menuphp 

    143行,插入 

 <m:item name='更新TAG静态' link='makehtml_tagphp' rank='sys_MakeHtml' target='main' />

 include/taglib/taglibphp  61行屏蔽,62行插入 (参考附带的文件,也可以直接覆盖)

 include/extendfuncphp   把里面的代码,都复制到你的extendfuncphp文件里     

 

三、使用说明:

  1、进入后台“生成”,即可看到左边的“更新TAG静态”(就在更新主页、栏目、文档等功能的下方)

  

  2、自行编辑TAG列表页模板list_taghtm、TAG首页模板index_taghtm,都放在你站点模板所在目录即可(和首页模板、列表页模板、内容页模板等在一起)

  

  3、生成有个选项“是否强制全部生成”,它是为了节约资源设计的

     如果是“重新生成全部TAG列表”,它会更新所有的TAG的列表页;

     如果是“仅更新上次生成后有变化的TAG”,它则会只更新上次更新之后有变化及新增加的TAG的列表页,这个比较节约时间

  

  4、生成的TAG首页,放在根目录,叫做tagshtml

  5、如果你的模板里,还有TAG需要指向到它的静态地址,则用参考这个函数去处理其标签即可:

     {dede:tag type='current'}

          [field:id function="nic_tag_url(@me)" /] 

     {/dede:tag} 

     其中的id就是这个TAG的ID号

  

  6、在内容页模板,如果想指向该文TAG的列表页,用以下标签即可:

     {dede:fieldid function='nic_arc_tag_link(@me)'/}

      在文章列表页、arclist标签等,使用一下代码调用文章TAG列表

     [field:id function='nic_arc_tag_link(@me)'/]

  

高级补充说明:

1、TAG这个目录可以改,修改arctaghtmlclassphp的146行和extendfuncphp的15行,里面的tag/字样

2、文件名里的id号不能去掉,举例说因为“作业”和“昨夜”的拼音都一样,如果没有ID,他们的文件名就重复了。

3、生成速度和普通列表页一致的,因为是从哪里修改过来的。 你有1万个TAG,假定你每个TAG对应有30个文章吧,列表页10篇为一页,那就有3万篇了。

     你可以到后台的sql运行工具里,执行这一句看看,就知道TAG对应文章之后,数量就远大于TAG数量本身:

      select count() as c from #@__taglist

4、如果需要在发布新文章的时候,同时更新相关的TAG列表页,可以参考附带的inc_archives_functionsphp,修改你DEDE后台目录dede/inc/inc_archives_functionsphp

   增加 741行、758~765行

   

5、部分网站因曾经做过静态化处理,可能会出现代码冲突!

6、因CSS路径以及命名规则不同以及新手细节不会处理!可能会导致生成的TAG列表以及TAG首页布局很乱。或者某些模板调用不出来!

7、如果新人站长不会处理。可以来 安心赚吧 看相关问题的处理方法教程!也可以留言,站长会帮助你处理!

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

这个有两种情况一是CSS的路径查一下对不对

还有一个是后台缓存的原因

解决方法

首先将DEDE程序默认还原

然后再重换成你的模板,导入数据库,(用帝国备份)

后台 一健更新,更新首页 ,更新所有文档,还有缓存

如果还不能解决,确定是你CSS问题

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

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情