首页 >

织梦DedeCMS中通过织梦DedeCMS:pagelist实现中英文分页效果

效果如下:

织梦DedeCMS中通过织梦DedeCMS:pagelist实现中英文分页效果

织梦DedeCMS中通过织梦DedeCMS:pagelist实现中英文分页效果

织梦DedeCMS中通过织梦DedeCMS:pagelist实现中英文分页效果

首先需要找到安装目录下的include/arc.listview.class.php

上面代码已经做了如下的修改:

1 | 添加变量$pagelang

2 | 从页面中读取数据,并去除空格

3 | 找到里面的2个同名方法GetPageListDM()–动态和静态的

将里面的方法进行如下替换

/**

* 获取静态的分页列表

*

* @access public

* @param string $list_len 列表宽度

* @param string $list_len 列表样式

* @return string

*/

//获取静态的分页列表

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

{

/*****************************************************************************************/

if($pagelang==’en’){

$uahome=” Home “;

$uaprevious=” Previous “;

$uanext=” Next “;

$ualastpage=” Last Page “;

$uapage=” Page “;

$uatotal=” Total “;

$uarecords=” Records. “;

}else{

$uahome=”首页”;

$uaprevious=”上一页”;

$uanext=”下一页”;

$ualastpage=”末页”;

$uapage=”页”;

$uatotal=”共”;

$uarecords=”条记录”;

}

$prepage = $nextpage = ”;

$prepagenum = $this->PageNo-1;

$nextpagenum = $this->PageNo+1;

if($list_len==” || ereg(“[^0-9]”,$list_len))

{

$list_len=3;

}

$totalpage = ceil($this->TotalResult/$this->PageSize);

if($totalpageTotalResult>0)

{

return “

  • “.$uatotal.” 1 “.$uapage.” “.$this->TotalResult.” “.$uarecords.”
  • \r\n”;

    }

    if($this->TotalResult == 0)

    {

    return “

  • “.$uatotal.” 0 “.$uapage.” “.$this->TotalResult.” “.$uarecords.”
  • \r\n”;

    }

    $purl = $this->GetCurUrl();

    $maininfo = “

  • “.$uatotal.” {$totalpage} “.$uapage.” “.$this->TotalResult.” “.$uarecords.”
  • \r\n”;

    $tnamerule = $this->GetMakeFileRule($this->Fields[‘id’],”list”,$this->Fields[‘typedir’],$this->Fields[‘defaultname’],$this->Fields[‘namerule2’]);

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

    //获得上一页和主页的链接

    if($this->PageNo != 1)

    {

    $prepage.=”

  • “.$uaprevious.”
  • \r\n”;

    $indexpage=”

  • “.$uahome.”
  • \r\n”;

    }

    else

    {

    $indexpage=”

  • “.$uahome.”
  • \r\n”;

    }

    //下一页,未页的链接

    if($this->PageNo!=$totalpage && $totalpage>1)

    {

    $nextpage.=”

  • “.$uanext.”
  • \r\n”;

    $endpage=”

  • “.$ualastpage.”
  • \r\n”;

    }

    else

    {

    $endpage=”

  • “.$ualastpage.”
  • \r\n”;

    }

    //option链接

    $optionlist = ”;

    $optionlen = strlen($totalpage);

    $optionlen = $optionlen*12 + 18;

    if($optionlen < 36) $optionlen = 36;

    if($optionlen > 100) $optionlen = 100;

    $optionlist = “

  • \r\n”;

    for($mjj=1;$mjj<=$totalpage;$mjj++)

    {

    if($mjj==$this->PageNo)

    {

    $optionlist .= “$mjj\r\n”;

    }

    else

    {

    $optionlist .= “$mjj\r\n”;

    }

    }

    $optionlist .= “

  • \r\n”;

    //获得数字链接

    $listdd=””;

    $total_list = $list_len * 2 + 1;

    if($this->PageNo >= $total_list)

    {

    $j = $this->PageNo-$list_len;

    $total_list = $this->PageNo+$list_len;

    if($total_list>$totalpage)

    {

    $total_list=$totalpage;

    }

    }

    else

    {

    $j=1;

    if($total_list>$totalpage)

    {

    $total_list=$totalpage;

    }

    }

    for($j;$j<=$total_list;$j++)

    {

    if($j==$this->PageNo)

    {

    $listdd.= “

  • $j
  • \r\n”;

    }

    else

    {

    $listdd.=”

  • “.$j.”
  • \r\n”;

    }

    }

    $plist = ”;

    if(eregi(‘index’,$listitem)) $plist .= $indexpage;

    if(eregi(‘pre’,$listitem)) $plist .= $prepage;

    if(eregi(‘pageno’,$listitem)) $plist .= $listdd;

    if(eregi(‘next’,$listitem)) $plist .= $nextpage;

    if(eregi(‘end’,$listitem)) $plist .= $endpage;

    if(eregi(‘option’,$listitem)) $plist .= $optionlist;

    if(eregi(‘info’,$listitem)) $plist .= $maininfo;

    return $plist;

    }

    /**

    * 获取动态的分页列表

    *

    * @access public

    * @param string $list_len 列表宽度

    * @param string $list_len 列表样式

    * @return string

    */

    function GetPageListDM($list_len,$listitem=”index,end,pre,next,pageno”,$pagelang)

    {

    /*****************************************************************************************/

    if($pagelang==’en’){

    $uahome=” Home “;

    $uaprevious=” Previous “;

    $uanext=” Next “;

    $ualastpage=” Last Page “;

    $uapage=” Page “;

    $uatotal=” Total “;

    $uarecords=” Records. “;

    }else{

    $uahome=”首页”;

    $uaprevious=”上一页”;

    $uanext=”下一页”;

    $ualastpage=”末页”;

    $uapage=”页”;

    $uatotal=”共”;

    $uarecords=”条记录”;

    }

    global $cfg_rewrite;

    $prepage = $nextpage = ”;

    $prepagenum = $this->PageNo-1;

    $nextpagenum = $this->PageNo+1;

    if($list_len==” || ereg(“[^0-9]”,$list_len))

    {

    $list_len=3;

    }

    $totalpage = ceil($this->TotalResult/$this->PageSize);

    if($totalpageTotalResult>0)

    {

    return “

  • “.$uatotal.” 1 “.$uapage.”/”.$this->TotalResult.””.$uarecords.”
  • \r\n”;

    }

    if($this->TotalResult == 0)

    {

    return “

  • “.$uatotal.” 0 “.$uapage.”/”.$this->TotalResult.””.$uarecords.”
  • \r\n”;

    }

    $maininfo = “

  • “.$uatotal.” {$totalpage}“.$uapage.”“.$this->TotalResult.”“.$uarecords.”
  • \r\n”;

    $purl = $this->GetCurUrl();

    if($cfg_rewrite == ‘Y’)

    {

    $nowurls = ereg_replace(“\-“, “.php?”, $purl);

    $nowurls = explode(“?”, $nowurls);

    $purl = $nowurls[0];

    }

    $geturl = “tid=”.$this->TypeID.”&TotalResult=”.$this->TotalResult.”&”;

    $purl .= ‘?’.$geturl;

    $optionlist = ”;

    //$hidenform = “TypeID.”‘>\r\n”;

    //$hidenform .= “TotalResult.”‘>\r\n”;

    //获得上一页和下一页的链接

    if($this->PageNo != 1)

    {

    $prepage.=”

  • “.$uaprevious.”
  • \r\n”;

    $indexpage=”

  • “.$uahome.”
  • \r\n”;

    }

    else

    {

    $indexpage=”

  • “.$uahome.”
  • \r\n”;

    }

    if($this->PageNo!=$totalpage && $totalpage>1)

    {

    $nextpage.=”

  • “.$uanext.”
  • \r\n”;

    $endpage=”

  • “.$ualastpage.”
  • \r\n”;

    }

    else

    {

    $endpage=”

  • “.$ualastpage.”
  • \r\n”;

    }

    //获得数字链接

    $listdd=””;

    $total_list = $list_len * 2 + 1;

    if($this->PageNo >= $total_list)

    {

    $j = $this->PageNo-$list_len;

    $total_list = $this->PageNo+$list_len;

    if($total_list>$totalpage)

    {

    $total_list=$totalpage;

    }

    }

    else

    {

    $j=1;

    if($total_list>$totalpage)

    {

    $total_list=$totalpage;

    }

    }

    for($j;$j<=$total_list;$j++)

    {

    if($j==$this->PageNo)

    {

    $listdd.= “

  • $j
  • \r\n”;

    }

    else

    {

    $listdd.=”

  • “.$j.”
  • \r\n”;

    }

    }

    $plist = ”;

    if(eregi(‘index’,$listitem)) $plist .= $indexpage;

    if(eregi(‘pre’,$listitem)) $plist .= $prepage;

    if(eregi(‘pageno’,$listitem)) $plist .= $listdd;

    if(eregi(‘next’,$listitem)) $plist .= $nextpage;

    if(eregi(‘end’,$listitem)) $plist .= $endpage;

    if(eregi(‘option’,$listitem)) $plist .= $optionlist;

    if(eregi(‘info’,$listitem)) $plist .= $maininfo;

    if($cfg_rewrite == ‘Y’)

    {

    $plist = str_replace(‘.php?tid=’, ‘-‘, $plist);

    $plist = str_replace(‘&TotalResult=’, ‘-‘, $plist);

    $plist = preg_replace(“/&PageNo=(\d+)/i”,’-\\1.html’,$plist);

    }

    return $plist;

    }

    注意是修改方法的参数,为其添加$pagelang个参数;

    在页面中可以调用


    {dede:pagelist listsize=’5’/}
    {dede:pagelistpagelang=’en’listsize=’5’/}
    pagelang:en为英文,cn为中文,默认语言中文



    织梦DedeCMS中通过织梦DedeCMS:pagelist实现中英文分页效果
  • 织梦DedeCMS增加一个fulltitle标签,让你的title=显示完整标题
  • 织梦DedeCMS增加一个fulltitle标签,让你的title=显示完整标题 | 织梦DedeCMS增加一个fulltitle标签,让你的title=显示完整标题 ...

    织梦DedeCMS中通过织梦DedeCMS:pagelist实现中英文分页效果
  • 织梦DedeCMS5.5版本全文搜索功能的实现方法
  • 织梦DedeCMS5.5版本全文搜索功能的实现方法 | 织梦DedeCMS5.5版本全文搜索功能的实现方法 ...

    织梦DedeCMS中通过织梦DedeCMS:pagelist实现中英文分页效果
  • 织梦DedeCMS文章页实现“文章标题-2级栏目-1级栏目
  • 织梦DedeCMS文章页实现“文章标题-2级栏目-1级栏目 | 织梦DedeCMS文章页实现“文章标题-2级栏目-1级栏目 ...