设置伪静态规则

设置伪静态规则,第1张

DedeCMS系统TAG标签伪静态设置

DedeCMS的系统软件TAGS确实是一个非常不错的功能,可以根据关键词连接快速找到相关内容。但是很多人期待,把标签做成静态数据,能更有利于SEO。cit.CN也对此事进行了推动和调整,但CITbugs觉得对于这个频繁更新的内容列表,最好选择pseudostatic的方法。下面就来分享一下。

1.修改前台接待显示信息连接
大家这儿做到的实际效果便是使原先/tags.php?keywors更改成/tags/keywords.html。
这儿关键修改下启用的标识,在includetaglibtag.lib.php中,在87行寻找

复制代码代码以下:
$row['link']=$cfg_cmsurl."/tags?".urlencode($row['keyword']);

将其改成:

复制代码代码以下:
$row['link']=$cfg_cmsurl."/tags/".urlencode($row['keyword']).".html";

2.修改分页查询代码
大家必须修改include/arc.taglist.class.php,将分页查询涵数更换为:

复制代码代码以下:
/***获得动态性的分页查询列表
*
*@accesspublic
*@paramint$list_len列表总宽
*@paramstring$listitem列表款式
*@returnstring
*/
functionGetPageListDM($list_len,$listitem="info,index,end,pre,next,pageno")
{
$prepage="";
$nextpage="";
$prepagenum=$this->PageNo-1;
$nextpagenum=$this->PageNo1;
if($list_len==""||preg_match("/[^0-9]/",$list_len))
{
$list_len=3;
}
$totalpage=$this->TotalPage;
if($totalpage<=1&&$this->TotalResult>0)
{
return"<spanclass="pageinfo">共1页/".$this->TotalResult."条</span>";
}
if($this->TotalResult==0)
{
return"<spanclass="pageinfo">共0页/".$this->TotalResult."条</span>";
}
$maininfo="<spanclass="pageinfo">共{$totalpage}页/".$this->TotalResult."条</span>rn";
$purl=$this->GetCurUrl();
$basename=basename($purl);
$tmpname=explode('.',$basename);
$purl=str_replace($basename,'',$purl).urlencode($this->Tag);
//var_dump($purl);exit;
//$purl.="?/".urlencode($this->Tag);
//得到上一页和下一页的连接
if($this->PageNo!=1)
{
$prepage.="<li><ahref='".$purl."-$prepagenum'.html>上一页</a></li>rn";
$indexpage="<li><ahref='".$purl."-1.html'>主页</a></li>rn";
}
else
{
$indexpage="<li><a>主页</a></li>rn";
}
if($this->PageNo!=$totalpage&&$totalpage>1)
{
$nextpage.="<li><ahref='".$purl."-$nextpagenum.html'>下一页</a></li>rn";
$endpage="<li><ahref='".$purl."-$totalpage.html'>末页</a></li>rn";
}
else
{
$endpage="<li><a>末页</a></li>rn";
}
//得到数据连接
$listdd="";
$total_list=$list_len*21;
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.="<liclass="thisclass"><a>$j</a></li>rn";
}
else
{
$listdd.="<li><ahref='".$purl."-$j.html'>".$j."</a></li>rn";
}
}
$plist='';
if(preg_match('/info/i',$listitem))
{
$plist.=$maininfo.'';
}
if(preg_match('/index/i',$listitem))
{
$plist.=$indexpage.'';
}
if(preg_match('/pre/i',$listitem))
{
$plist.=$prepage.'';
}
if(preg_match('/pageno/i',$listitem))
{
$plist.=$listdd.'';
}
if(preg_match('/next/i',$listitem))
{
$plist.=$nextpage.'';
}
if(preg_match('/end/i',$listitem))
{
$plist.=$endpage.'';
}
return$plist;
}

3.设定伪静态标准
大家这儿以iis7为事例,设定下列标准:

复制代码代码以下:
<?xmlversion="1.0"encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rulename="weather1"stopProcessing="true">
<matchurl="tags/([^-]).html$"ignoreCase="true"/>
<conditionslogicalGrouping="MatchAll">
<addinput="{REQUEST_FILENAME}"matchType="IsFile"negate="true"/>
<addinput="{REQUEST_FILENAME}"matchType="IsDirectory"negate="true"/>
</conditions>
<actiontype="Rewrite"url="/tags.php?/{R:1}"appendQueryString="false"/>
</rule>
<rulename="weather2"stopProcessing="true">
<matchurl="tags/([^-])-([0-9]).html$"ignoreCase="true"/>
<conditionslogicalGrouping="MatchAll">
<addinput="{REQUEST_FILENAME}"matchType="IsFile"negate="true"/>
<addinput="{REQUEST_FILENAME}"matchType="IsDirectory"negate="true"/>
</conditions>
<actiontype="Rewrite"url="/tags.php?/{R:1}/{R:2}"appendQueryString="false"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

能够立即储存为web.config放到网站网站根目录。
4.再次形成html网页页面
这一实际 *** 作就别说了,所有再次形成下,到此所有修改结束。
5.浏览查询显示信息結果
到此,大家早已完成了全部的设定

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/773476.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存