织梦中通过dede: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($totalpage<=1 && $this->TotalResult>0)

{

        return "<li><span class=\"pageinfo\">".$uatotal." <strong>1</strong> ".$uapage." <strong>".$this->TotalResult."</strong> ".$uarecords."</span></li>\r\n";

}

if($this->TotalResult == 0)

{

        return "<li><span class=\"pageinfo\">".$uatotal." <strong>0</strong> ".$uapage." <strong>".$this->TotalResult."</strong> ".$uarecords."</span></li>\r\n";

  

}

$purl = $this->GetCurUrl();

       $maininfo = "<li><span class=\"pageinfo\">".$uatotal." <strong>{$totalpage}</strong> ".$uapage." <strong>".$this->TotalResult."</strong> ".$uarecords."</span></li>\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.="<li><a href='".str_replace("{page}",$prepagenum,$tnamerule)."'>".$uaprevious."</a></li>\r\n";

$indexpage="<li><a href='".str_replace("{page}",1,$tnamerule)."'>".$uahome."</a></li>\r\n";

}

else

{

$indexpage="<li>".$uahome."</li>\r\n";

}

 

//下一页,未页的链接

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

{

$nextpage.="<li><a href='".str_replace("{page}",$nextpagenum,$tnamerule)."'>".$uanext."</a></li>\r\n";

$endpage="<li><a href='".str_replace("{page}",$totalpage,$tnamerule)."'>".$ualastpage."</a></li>\r\n";

}

else

{

$endpage="<li>".$ualastpage."</li>\r\n";

}

 

//option链接

$optionlist = '';

 

$optionlen = strlen($totalpage);

$optionlen = $optionlen*12 + 18;

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

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

$optionlist = "<li><select name='sldd' style='width:{$optionlen}px' onchange='location.href=this.options[this.selectedIndex].value;'>\r\n";

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

{

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

{

$optionlist .= "<option value='".str_replace("{page}",$mjj,$tnamerule)."' selected>$mjj</option>\r\n";

}

else

{

$optionlist .= "<option value='".str_replace("{page}",$mjj,$tnamerule)."'>$mjj</option>\r\n";

}

}

$optionlist .= "</select></li>\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.= "<li class=\"thisclass\">$j</li>\r\n";

}

else

{

$listdd.="<li><a href='".str_replace("{page}",$j,$tnamerule)."'>".$j."</a></li>\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($totalpage<=1 && $this->TotalResult>0)

{

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e9a4aa59209b14692b14d992ddbb106d.html