dedecms实现栏目内的文章上下链接

使用dedecms的时候,当打开某篇文章的时候,底部会有“上一篇”“下一篇”的链接信息,默认情况下,上下链接信息并没有区分栏目的属性,那么需要实现本栏目内的上下篇,如何实现呢?

答案是修改程序。

修改:include/inc_archives_view.php

修改function GetPreNext()函数为:

  //--------------------------
  //获取上一篇,下一篇链接
  //--------------------------
  function GetPreNext()
  {
   $rs = "";
   $aid = $this->ArcID;
  $rid = $this->Fields['typeid'];
   $next = " #@__archives.ID>'$aid' and #@__archives.typeID='$rid' order by #@__archives.ID asc ";
   $pre = " #@__archives.ID<'$aid' and #@__archives.typeID='$rid' order by #@__archives.ID desc ";

   $query = "Select #@__archives.ID,#@__archives.title,
   #@__archives.typeid,#@__archives.ismake,#@__archives.senddate,#@__archives.arcrank,#@__archives.money,
  #@__arctype.typedir,#@__arctype.typename,#@__arctype.namerule,#@__arctype.namerule2,#@__arctype.ispart,
  #@__arctype.moresite,#@__arctype.siteurl
  from #@__archives left join #@__arctype on #@__archives.typeid=#@__arctype.ID
  where ";
  //echo $query.$next."<br />";
  $nextRow = $this->dsql->GetOne($query.$next);
  $preRow = $this->dsql->GetOne($query.$pre);
  if(is_array($preRow)){
    $mlink = GetFileUrl($preRow['ID'],$preRow['typeid'],$preRow['senddate'],$preRow['title'],$preRow['ismake'],$preRow['arcrank'],$preRow['namerule'],$preRow['typedir'],$preRow['money'],true,$preRow['siteurl']);
       $rs .= "上一篇:<a href='$mlink'>{$preRow['title']}</a> ";
  }
  else{
   $rs .= "上一篇:没有了 ";
  }
  if(is_array($nextRow)){
    $mlink = GetFileUrl($nextRow['ID'],$nextRow['typeid'],$nextRow['senddate'],$nextRow['title'],$nextRow['ismake'],$nextRow['arcrank'],$nextRow['namerule'],$nextRow['typedir'],$nextRow['money'],true,$nextRow['siteurl']);
       $rs .= " &nbsp; 下一篇:<a href='$mlink'>{$nextRow['title']}</a> ";
  }
  else{
   $rs .= " &nbsp; 下一篇:没有了 ";
   }
  return $rs;
  }  

基本思想就是获得栏目ID,然后查询的时候加上栏目ID的限制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值