织梦无忧官网,专业提供织梦模板,dede模板,dede源码,网页模板等相关模板源码

网站地图 织梦CMS标签生成器 [签到送金币] 登录后台 登录 登录后台 注册 QQ登录
织梦无忧,用心做好源码!7年品牌,值得信赖! 织梦无忧,个个精品,宁缺毋滥!每月购买不少于3000元精品源码免费分享,早开通,早享受!众人拾柴火焰高,您有好的源码不要浪费,可以换VIP哦!国庆中秋提前大促:终身会员只需要88元!新会员开通,直接进入会员中心--购买会员--直接开通即可。

dede织梦模板数量:2084个 今日更新:11个 本月更新:280 个dede数据 {网站模板每天晚上集中更新}

服务中心

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

日期:2018-12-11 08:44

    织梦无忧中秋国庆vip大促销

    本站目前VIP模板:2084每天至少更新一套模板

    月VIP:28元 年VIP:50元 终身VIP:88元

    加入vip

您的打赏帮助我们变得更好,谢谢支持!
打赏

前言

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

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

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

找到(约29行)

?
1 var $remoteDir;

在其下面加上一个新行

?
1 var $pagelang;

找到(约528行)

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

在其下面加上一个新行

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

找到(约531行)

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

在其下面加上

?
1 2 3 4 if($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));

修改(新增)

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

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

修改(约826行)

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

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

修改

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

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

修改

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

 
1 2 3 4 5 6 7 if($pagelang=='cn') { $maininfo = "<li><span class="pageinfo">共 <strong>{$totalpage}</strong> 页 <strong>".$this->TotalResult."</strong> 条</span></li> "; } else { $maininfo = "<li><span class="pageinfo">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'/}

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

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能有所帮助,如果有疑问大家可以留言交流。