dedecms5.6在内容页面调用当前文章的相关文章的方法

在使用dedecms5.6时发现如果在内容页面调用相关文章,简单的使用dedecms arclist不能够实现,但是arclist有一个字段keyword,如果把当前文章的keyword调用出来,就能够得到当前相关文章的列表.我的 做法是对key…

 

在使用dedecms5.6时发现如果在内容页面调用相关文章,简单的使用dedecms arclist不能够实现,但是arclist有一个字段keyword,如果把当前文章的keyword调用出来,就能够得到当前相关文章的列表.我的 做法是对keyword附一个固定的值
{dede:arclist keyword=’relation’ row=’5′}
<li><a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:arclist}

如果是在终端页面调用相关文章,就将keyword的值固定,其他的参数也都是可以用的,默认的keyword值是当前页面得关键字,有兴趣的可以去我网站看看 游戏联盟114 可以对比下面相关文章的关键字和当前页面得关键字

具体的实现方式是:
1.修改include/arc.archives.class.php找到MakeOneTag($this->dtp, $this, ‘N’,$reltag);将其替换为
$reltag = explode(‘,’,$this->Fields['keywords']);
$reltag = $reltag[0];
MakeOneTag($this->dtp, $this, ‘N’,$reltag);
 

2.修改include/下的channelunit.func.php找到函数MakeOneTag函数 MakeOneTag(&$dtp, &$refObj, $parfield=’Y’)在函数的最后加上一个参数
MakeOneTag(&$dtp, &$refObj, $parfield=’Y’,$reltag)

仔细看下有什么区别吧
在函数中找到
if(in_array($tagname,$alltags))
{
$filename = DEDEINC.’/taglib/’.$tagname.’.lib.php’;
include_once($filename);
$funcname = ‘lib_’.$tagname;
$dtp->Assign($tagid,$funcname($ctag,$refObj));
}
 

将其修改为
if(in_array($tagname,$alltags))
{
$filename = DEDEINC.’/taglib/’.$tagname.’.lib.php’;
include_once($filename);
$funcname = ‘lib_’.$tagname;
if($tagname == ‘arclist’){
foreach($ctag->CAttribute->Items as $key => $val){
if($key == ‘keyword’){
if($val==’Relation’){

$ctag->CAttribute->Items[$key]=$reltag;
}
}
}
}
$dtp->Assign($tagid,$funcname($ctag,$refObj));
}
 

呵呵,去生成静态吧,不要忘记了 keyword=’relation’ relation 不要变哦,变了可就调不出来了,有问题就问吧

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

通常我们在做织梦模板时都会为标题设置titlelen或者直接来截取了标题长度,然后又希望在鼠标移动到标题的时候,能显示完整的织梦标题,我们以为使用下面的代码就可以完成:a title=”[field:title/]” href…
问:想和你咨询个问题,就是我用的dede在后台添加一篇文章dede就死机了。是怎么回事的。我是部队上的,是自己的服务器的。答:一直是这样死机还是突然是这样呢?问:也不是一直也不是突然的,我以的的系统有…
织梦图片集 上传图片不能上传 弹出提示302这个问题是前两天遇到的,有位神人已经解决了。方法分享给大家,如下:解决方法是:在include/userlogin.class.php文件中的第二行session_star…
关于dede织梦cms如何防止黑客攻击的几点建议 这些方法也是从网上搜集的 希望对大家有用1、修改后台目录:安装好网站之后第一步就应该修改后台目录,把默认的dede随意改成其他名字,最好是MD5加密形式的;(一般…
安装织梦dedecms程序后程序后台主页会提示出需要修改管理员名称,但是从后台默认是改不了的,修改时提示不能修改id为1的管理员名称,下面将如何修改织梦(dede)cms修改管理员名称的方法提供给大家:用后台的sql…
自从dedecms织梦系统更新到6.7日的版本,底部版权信息调用标签{dede:global.cfg_powerby/}会自动加上织梦官方 的链接[PowerbyDedeCms],想必很多新用户使用中都想去除这个官方的链接,由于这是官方的作为,本文…