各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案各类知识收集,PHP技术分享与解决方案

Str Tom,为分享PHP技术和解决方案,贡献一份自己的力量!
QQ:420220301 微信/手机:150-3210-7690
当前位置:首页 > CMS教程 > dedecms

dedecms 5.5 伪静态化ReWrite规则

管理员 2014-08-27
dedecms
102
个人修改记录,不一定适合大众.
列表命名规则:

代码如下:
/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);

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 lecms, classcms, fastadmin, pbootcms, phpcms, eyoucms, yzmcms, PHP, xunruicms, jizhicms, dedecms, wordpress, hkcms, yzncms, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。

扫码关注

qrcode

QQ交谈

回顶部