php函数

dedecms织梦实现中英文分页功能的示例代码分享

作者:admin 2017-05-15 我要评论( )

相信每位曾经的织梦新手,都会碰到以下的几个问题,第一个就是织梦的留言板功能外观上不大适合企业网站,第二个就是做英文版的时候,分页同样实现英文的比较困难...

相信每位曾经的织梦新手,都会碰到以下的几个问题,第一个就是织梦的留言板功能外观上不大适合企业网站,第二个就是做英文版的时候,分页同样实现英文的比较困难,这篇文章就给大家分享了在dedecms中如何实现中英文分页功能,有需要的朋友们可以参考借鉴。

dedecms模板下载地址: www.php.cn/xiazai/code/dedecms

前言

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

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

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

找到(约29行)

var $remoteDir;

在其下面加上一个新行

var $pagelang;

找到(约528行)

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

在其下面加上一个新行

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

找到(约531行)

if($list_len=="")
{
$list_len = 3;
}

在其下面加上

if($pagelang=="")
{
$pagelang = 'cn';
}

修改(约545行)

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

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

修改(新增

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

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

修改(约826行)

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

if($pagelang=='cn') {
return "<li><span class=\"pageinfo\">共 <strong>1</strong>页<strong>".$this->TotalResult."</strong> 条记录</span></li>\r\n";
}
else
{
return "<li><span class=\"pageinfo\">Total <strong>1</strong>Page<strong>&nbsp;".$this->TotalResult."</strong> Records</span></li>\r\n";
}

修改

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

if($pagelang=='cn') {
return "<li><span class=\"pageinfo\">共 <strong>0</strong>页<strong>".$this->TotalResult."</strong>条记录</span></li>\r\n";
}
else
{
return "<li><span class=\"pageinfo\">Total <strong>0</strong> Page <strong>&nbsp;".$this->TotalResult."</strong> Records</span></li>\r\n";
}

修改

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

if($pagelang=='cn') {
$maininfo = "<li><span class=\"pageinfo\">共 <strong>{$totalpage}</strong> 页 <strong>".$this->TotalResult."</strong> 条</span></li>\r\n";
}
else
{
$maininfo = "<li><span class=\"pageinfo\">Total <strong>{$totalpage}</strong> Page <strong>&nbsp;".$this->TotalResult."</strong> Records</span></li>\r\n";
}

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

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

修改

{dede:pagelist listsize='5'/}

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

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

总结

以上就是dedecms织梦实现中英文分页功能的示例代码分享的详细内容,更多请关注php中文网其它相关文章!

}

转载请注明出处。

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • PHP实现多个进程同时写入同一个文件的两种方案分享

    2017-05-15

  • 如何使用fscok实现异步调用PHP的代码案例

    2017-05-15

  • PHP开发环境在Macbook Pro下搭建的图文详解

    2017-05-15

  • PHP使用范围解析操作符的示例代码分享

    2017-05-15

网友点评