1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

织梦DEDECMS自由列表分页链接优化

本帖由 wangzhuan20112011-12-08 发布。版面名称:源码讨论

  1. wangzhuan2011

    wangzhuan2011 效益NO1

    注册:
    2011-11-16
    帖子:
    87
    赞:
    0
    织梦的自由列表是个比较实用的功能,用好了前途无量。不过自由列表页的分页链接也和栏目页TAG标签列表页的分页链接一样,存在一些瑕疵。所以今天重点解决这个问题。

    其改法和《织梦DEDECMS栏目列表分页链接优化》这篇文章中介绍的方法基本一致,就是需要改的一些html代码不一样而已,思路完全一样。

    具体的效果和功能就不介绍了,可以看看栏目列表页链接优化那篇文章,直接说改法吧。

    1.找到\include\arc.freelist.class.php这个文件,把

    $tnamerule = ereg_replace(‘^(.*)/’,”,$tnamerule);

    改成

    $tnamerule = ereg_replace(‘^(.*)/’,”,$tnamerule);
    $listdir= ereg_replace(‘{cmspath}’,$GLOBALS['cfg_cmspath'],$this->FLInfos['listdir']);

    2.找到下面几行代码(就在“//获得上一页和主页的链接”下面)

    if($this->PageNo != 1)
    {
    $prepage.=”<a href=’”.str_replace(“{page}”,$prepagenum,$tnamerule).”‘>上一页</a>\r\n”;
    $indexpage=”<a href=’”.str_replace(“{page}”,1,$tnamerule).”‘>首页</a>\r\n”;
    }
    else
    {
    $indexpage=”<a href=’#'>首页</a>\r\n”;
    }

    改成

    if($this->PageNo != 1)
    {
    if($prepagenum==1)
    {
    $prepage.=”<a href=\”".$listdir.”/\”>上一页</a>\r\n”;
    }
    else
    {
    $prepage.=”<a href=\”".str_replace(“{page}”,$prepagenum,$tnamerule).”\”>上一页</a>\r\n”;
    }
    $indexpage=”<a href=\”".$listdir.”/\”>首页</a>\r\n”;
    }
    else
    {
    $indexpage=”首页\r\n”;
    }

    3.找到

    else
    {
    $listdd.=”<a href=’”.str_replace(“{page}”,$j,$tnamerule).”‘>”.$j.”</a>\r\n”;
    }

    改成

    else if($j==1)
    {
    $listdd.=”<a href=\”".$listdir.”/\”>”.$j.”</a>\r\n”;
    }
    else
    {
    $listdd.=”<a href=\”".str_replace(“{page}”,$j,$tnamerule).”\”>”.$j.”</a>\r\n”;
    }

    好了,也是只需要3步,就大功告成了。

    注:由于编辑器原因,如果复制代码过程中出现中文符号如“,请统统改成英文符号”,不然修改不成功。如果程序是UTF8,请保存的时候也选择utf8格式。
     
  2. 无非不是

    无非不是 New Member

    注册:
    2011-12-05
    帖子:
    50
    赞:
    0
    技术文章啊
     
  3. ok1246

    ok1246 New Member

    注册:
    2011-10-17
    帖子:
    192
    赞:
    0
    技术性的我看不懂。。
     
  4. 杨晓宇

    杨晓宇 New Member

    注册:
    2011-11-30
    帖子:
    416
    赞:
    0
    好贴要人顶哦