DEDECMS的{dede:arclist}如何调用文章或软件的任何字段

点评:关键字描述:软件任何文章调用如何softrankrow这个我们dede:arclist{dede:arclist}的学习心得,和一些问题,和大家一起交流基本语法:{dede:arclisttypeid=''row=''col=''titlelen=''infolen=''imgwidth=''imgheight=''listtype=''orderby=''关键字描述

  点评:关键字描述:软件 任何 文章 调用 如何 softrank row 这个 我们 dede:arclist {dede:arclist}的学习心得,和一些问题,和大家一起交流 基本语法: {dede:arclist typeid='' row='' col='' titlelen='' infolen='' imgwidth='' imgheight='' listtype='' orderby=''

关键字描述:软件 任何 文章 调用 如何 softrank row 这个 我们 dede:arclist

{dede:arclist}的学习心得,和一些问题,和大家一起交流


基本语法:
{dede:arclist typeid='' row='' col='' titlelen='' infolen=''
imgwidth='' imgheight='' listtype='' orderby='' keyword=''}
底层模板(InnerText)
{/dede:arclist}

在我这几天做模板的过程中,发现主要问题出在“底层模板(InnerText)”

我们在做模板的时候,特别是列表页,或者自己定义的一个封面页面的时候。

在底层模板,只能调用,
底层模板字段:
ID(同 id),title,iscommend,color,typeid,ismake,description(同 info),writer,shorttitle,memberid
pubdate,senddate,arcrank,click,litpic(同 picname),typedir,typename,
arcurl(同 filename),typeurl,stime(pubdate 的"0000-00-00"格式),
textlink,typelink,imglink,image

这些字段,但是在这里是没有比较重要的几个字段,比如关键字,作者,特别是软件等级。让人非常郁闷啊。
我觉得如果可以改源代码,应该就可以把这个问题解决的,但是不清楚具体是那个文件,那个函数,有知道的朋友,可以提醒一下不?



上面是我在学习过程中遇到的一些问题,晚上21:55分,通过各位朋友的提醒,我找到了一些规律。
就以软件频道的等级(softrank)这个字段为例,我们在使用{dede:arclist}这个标签的时候,是不能调用这个字段的,那我们要如何修改才能让他能够调用例如softrank,keyword,writer等等一些我们想调用的字段呢。我在这里举例一个softrank。下面是具体的操作方法。

1、首先要找到{dede:arclist}这个标签对应的文件源代码,通过later提醒,找到了,就是文件inc_fun_SpGetArcList.php,你打开后,比如搜索softrank你会发现搜到不到,因此我们就调用不到softrank了,那我们自己怎么加呢。

我们仔细看一下会发现,所有的能调用的字段,都是通过这段sql语句实现的。
Quote:

  $query = "Select arc.ID,arc.title,arc.iscommend,lor,arc.typeid,
arc.ismake,arc.description,arc.pubdate,arc.senddate,arc.arcrank,arc.click,
arc.money,arc.litpic,arc.writer,arc.shorttitle,mberid,arc.vote,arc.postnum,arc.lastpost,arc.keywords,
tp.typedir,tp.typename,tp.isdefault,tp.defaultname,tp.namerule,
tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,st.softrank
$addField
from xkzzz_archives arc
left join xkzzz_arctype tp on arc.typeid=tp.ID
left join xkzzz_addonsoft st on arc.ID=st.aid
$addJoin
where $orwhere $ordersql $limitsql";



  大家仔细看一下,我这段代码和你们有什么区别,多了一个arc.keywords和st.softrank,但这样加了还不行,先讲一下keywords是怎么添加的,要在下面的代码中找到

Copy code

  $row['info'] = $row['description'];



然后在下面或者上面加入下面的代码,
Copy code

  $row['keyword'] = $row['keywords'];



这样keyword就能够在{dede:arclist}标签里面调用了,如何调用呢,很简单[field:keyword]

现在明白了吧。


那么我再讲一下softrank这个字段怎么调用的呢,这里比较麻烦,没有keyword这么简单,加了就可以了,因为keyword和其他字段一样都是在dede_archives这张表里的,但是softrank你会发现不是在这个表里的,他是在dede_addonsoft这种表里的,因此就比较麻烦了,那么还要如何操作呢,看上面那段SQL语句里面,我特别放大了,那段代码left join xkzzz_addonsoft st on arc.ID=st.aid,最后一步如何操作呢。

同样在下面的代码中找到

Copy code

  $row['info'] = $row['description'];



然后在下面或者上面加入下面的代码,

Copy code

  $row[softrank] = $row[softrank];



这样softrank就能够在{dede:arclist}标签里面调用了,如何调用呢,很简单
[field:softrank function='GetRankStar(@me)'/]

大功告成!!!以后想调用什么字段随便你自己调用了,方法和上面一样。那么{dede:arclist}这个标签就比较实用了。

我发现我们dede的论坛里面很少有这样的教程介绍,希望大家学习后,或者研究后,能够分享出来。我想我这个东西可能很多朋友都已经知道了,如果给各位高手造成不变,还请谅解。在这里再次感谢later的提醒。
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

织梦DEDECMS 栏目文章文章命名规则修改, 每次添加栏目的时候 都要改文章命名规则,十分麻烦, 修改下面这个地方就可以一改永亦,织梦模板网为您解答 找到\include\common.inc.php 搜索 $cfg_df_namerule 把: $cfg_df_namerule = {typedir}/{Y}/{M}{D}/{aid
当我们通过{dede:arclist keyword=关键词}来调用文章列表时,你会发现只在其中一个栏目里生效,在其他栏目,仍然显示上一次的关键词。 原因是由于arclist的缓存导致的。 只需修改/include/taglib/arclist.lib.php文件,大概在384行: $taghash = md5(seriali
我们在使用织梦dedecms数据库内容替换时候,经常遇到 安全码 显示的无法识别或者不清晰,这个安全码的位置是在核心 - 批量维护 - 数据库内容替换,如果识别不了,这个页面还没有改变验证码的地方,只能重新刷新页面,如果我们不想要这个安全码的话,要怎么操
今天一个客户在安装织梦dedecms时候,安装完成后登录后台就出现Safe Alert Request Error step 2,常用dedecms的朋友都知道,这是织梦的安全机制,在程序觉得有sql注入等攻击时候,会有这种提示。 1、起初我以为是文件没传全,让这个朋友重新传了文件上去安
dede织梦搜索伪静态,伪静态设置成功后,访问URL地址效果如下: 搜索页 http://www.baidu.com/search/织梦.html 搜索分页 http://www.baidu.com/search/织梦-2.html 本教程也适用于手机端。 开启伪静态: 后台-系统参数-核心设置-开启伪静态 后台-系统参数-
在使用 织梦模板 建站中,随机数作为一个偶尔使用到的参数,在具体使用中虽然用的少,但是今天跟版网小编给大家介绍下,大家可以参考下: 实现随机数的调用可以使用下面的js: 方法一:js代码 Math.rondom()*(m-n)+n; //生成在n到m之间的整数 但如果要用随机