dedecms 5.5 伪静态化ReWrite规则

个人修改记录,不一定适合大众.
列表命名规则:

代码如下:
/list/list-{tid}-{page}.html

文章命名规则:

代码如下:
/test/{Y}{M}/{aid}.html

.htaccess

代码如下:
RewriteRule ^([a-zA-Z]+)/([0-9]+)/([0-9]+).html$ /plus/view.php?arcID=$3
RewriteRule ^([a-zA-Z]+)/([0-9]+)/([0-9]+)-([0-9]+).html$ /plus/view.php?aid=$3&pageno=$4

include/arc.archives.class.php

代码如下:
//获得动态页面分页列表
function GetPagebreakDM($totalPage,$nowPage,$aid)
{
global $cfg_rewrite;
if($totalPage==1)
{
return “”;
}
$PageList = “<li><a>共”.$totalPage.”页: </a></li>”;
$nPage = $nowPage-1;
$lPage = $nowPage+1;
if($nowPage==1)
{
$PageList.=”<li><a href=’#'>上一页</a></li>”;
}
else
{
if($nPage==1)
{
$PageList.=”<li><a href=’view.php?aid=$aid’>上一页</a></li>”;
if($cfg_rewrite == ‘Y’)
{
$PageList = preg_replace(“/view.php?aid=(d+)/i”,’-\1-1.html’,$PageList);
}
}
else
{
$PageList.=”<li><a href=’view.php?aid=$aid&pageno=$nPage’>上一页</a></li>”;
if($cfg_rewrite == ‘Y’)
{
$PageList = str_replace(“view.php?aid=”,“”,$PageList);
$PageList = preg_replace(“/&pageno=(d+)/i”,’-\1.html’,$PageList);
}
}
}
for($i=1;$i<=$totalPage;$i++)
{
if($i==1)
{
if($nowPage!=1)
{
$PageList.=”<li><a href=’view.php?aid=$aid’>1</a></li>”;
if($cfg_rewrite == ‘Y’)
{
$PageList = preg_replace(“/view.php?aid=(d+)/i”,’-\1-1.html’,$PageList);
}
}
else
{
$PageList.=”<li class=”thisclass”><a>1</a></li>”;
}
}
else
{
$n = $i;
if($nowPage!=$i)
{
$PageList.=”<li><a href=’view.php?aid=$aid&pageno=$i’>”.$n.”</a></li>”;
if($cfg_rewrite == ‘Y’)
{
$PageList = str_replace(“view.php?aid=”,“”,$PageList);
$PageList = preg_replace(“/&pageno=(d+)/i”,’-\1.html’,$PageList);
}
}
else
{
$PageList.=”<li class=”thisclass”><a href=’#'>{$n}</a></li>”;
}
}
}
if($lPage <= $totalPage)
{
$PageList.=”<li><a href=’view.php?aid=$aid&pageno=$lPage’>下一页</a></li>”;
if($cfg_rewrite == ‘Y’)
{
$PageList = str_replace(“view.php?aid=”,“”,$PageList);
$PageList = preg_replace(“/&pageno=(d+)/i”,’-\1.html’,$PageList);
}
}
else
{
$PageList.= “<li><a href=’#'>下一页</a></li>”;
}
return $PageList;
}
//获得静态页面分页列表
function GetPagebreak($totalPage,$nowPage,$aid)
{
if($totalPage==1)
{
return “”;
}
$PageList = “<li><a>共”.$totalPage.”页: </a></li>”;
$nPage = $nowPage-1;
$lPage = $nowPage+1;
if($nowPage==1)
{
$PageList.=”<li><a href=’#'>上一页</a></li>”;
}
else
{
if($nPage==1)
{
$PageList.=”<li><a href=’”.$this->NameFirst.”.”.$this->ShortName.”‘>上一页</a></li>”;
}
else
{
$PageList.=”<li><a href=’”.$this->NameFirst.“-”.$nPage.”.”.$this->ShortName.”‘>上一页</a></li>”;
}
}
for($i=1;$i<=$totalPage;$i++)
{
if($i==1)
{
if($nowPage!=1)
{
$PageList.=”<li><a href=’”.$this->NameFirst.”.”.$this->ShortName.”‘>1</a></li>”;
}
else
{
$PageList.=”<li class=”thisclass”><a href=’#'>1</a></li>”;
}
}
else
{
$n = $i;
if($nowPage!=$i)
{
$PageList.=”<li><a href=’”.$this->NameFirst.“-”.$i.”.”.$this->ShortName.”‘>”.$n.”</a></li>”;
}
else
{
$PageList.=”<li class=”thisclass”><a href=’#'>{$n}</a></li>”;
}
}
}
if($lPage <= $totalPage)
{
$PageList.=”<li><a href=’”.$this->NameFirst.“-”.$lPage.”.”.$this->ShortName.”‘>下一页</a></li>”;
}
else
{
$PageList.= “<li><a href=’#'>下一页</a></li>”;
}
return $PageList;
}

include/arc.listview.class.php

代码如下:
$plist = str_replace(‘&TotalResult=’, ‘-’, $plist);

去除动态列表网址里带有列表的文章总数

代码如下:
$plist = preg_replace(“/&TotalResult=(d+)/i”, ”, $plist);

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com