进入管理中心 亿企生意通 资源导航 微信大号推广 固定广告位交易 设为首页|加入收藏
当前位置:亿企联盟资讯 > 建站技术 > dedecms教程

dedecms织梦实现中英文分页功能方法步骤

出处:本站原创   发布时间:2019-07-11 14:10:06    您是第0位浏览者

  

前言

  之前做项目的时候遇到一个需求,因为是中英文版本的网站,所以分页也就需要对应的英文,在论坛、百度等地方搜索了很久均没能找到满意的答案,不过今天找到下面这篇内容,并进行测试,发现可以适合织梦目前最新的5.7版,并且已经成功的实现,所以与大家分享下:

  温馨提示:下面的第几行,第几行可以忽略,用DW的搜索功能进行索引,可以方便找到,目标代码。而下面有些代码搜索不到,只是因为一些“空格”的问题,修改的时候注意下就能找到。

  1、打开include/arc.listview.class.php(本文以DedeCMS5.7为例)

  找到(约29行)

  ?

1var $remoteDir;

  在其下面加上一个新行

  ?

1var $pagelang;

  找到(约528行)

  ?

1$list_len =  trim($ctag->GetAtt("listsize"));

  在其下面加上一个新行

  ?

1$pagelang =  trim($ctag->GetAtt("pagelang"));

  找到(约531行)

  ?

1 2 3 4if($list_len=="") { $list_len = 3; }

  在其下面加上

  ?

1 2 3 4if($pagelang=="") { $pagelang = 'cn'; }

  修改(约545行)

  ?

1$this->dtp->Assign($tagid,$this->GetPageListST($list_len,$listitem));

  为

  ?

1$this->dtp->Assign($tagid,$this->GetPageListST($list_len,$listitem,$pagelang));

  修改(新增)

  ?

1function  GetPageListST($list_len,$listitem="index,end,pre,next,pageno")

  为

  ?

1function  GetPageListST($list_len,$listitem="index,end,pre,next,pageno",$pagelang='cn')

  修改(约826行)

  ?

1return "<li><span>共  <strong>1</strong>页<strong>".$this->TotalResult."</strong>  条记录</span></li> ";

  为

  ?

1 2 3 4 5 6 7if($pagelang=='cn') { return "<li><span>共  <strong>1</strong>页<strong>".$this->TotalResult."</strong>  条记录</span></li> "; } else { return "<li><span>Total  <strong>1</strong>Page<strong>&nbsp;".$this->TotalResult."</strong>  Records</span></li> "; }

  修改

  ?

1return "<li><span>共  <strong>0</strong>页<strong>".$this->TotalResult."</strong>条记录</span></li>  ";

  为

  ?

1 2 3 4 5 6 7if($pagelang=='cn') { return "<li><span>共  <strong>0</strong>页<strong>".$this->TotalResult."</strong>条记录</span></li>  "; } else { return "<li><span>Total  <strong>0</strong> Page  <strong>&nbsp;".$this->TotalResult."</strong>  Records</span></li> "; }

  修改

  ?

1$maininfo = "<li><span>共  <strong>{$totalpage}</strong> 页  <strong>".$this->TotalResult."</strong> 条</span></li>  ";

  为

1 2 3 4 5 6 7if($pagelang=='cn') { $maininfo = "<li><span>共  <strong>{$totalpage}</strong> 页  <strong>".$this->TotalResult."</strong> 条</span></li>  "; } else { $maininfo = "<li><span>Total  <strong>{$totalpage}</strong> Page  <strong>&nbsp;".$this->TotalResult."</strong>  Records</span></li> "; }

  依照上面的方法,依次修改下面的获取上一页、主页、下一页、末页的内容

  2、打开列表模板页面,我这以list_article_en.htm为例,其中list_article_en.htm为英文版的列表页面模板,中文版的可以不用修改

  修改

  ?

1{dede:pagelist listsize='5'/}

  为

  ?

1{dede:pagelist pagelang='en'  listsize='5'/}

  重新生成列表页成功。不过还有一点美中不足的地方是虽然已经实现了列表页的全英文分页了,但是文章页的“上一篇”、“上一页”或“下一篇”、“下一页”的功能还没能搞定,小编会研究后和大家再继续分享的。

  总结


此评论不代表本站观点大家说

0.1152s