帝国CMS如何实现搜索页伪静态
这篇文章主要介绍帝国CMS如何实现搜索页伪静态,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
帝国CMS搜索页伪静态教程步骤:
一、打开\e\search\index.php 411行左右,找到:
代码如下:
Header("Location:result/?searchid=$searchid".$dogetvar);修改为:
代码如下:
Header("Location:$public_r[newsurl]search-0-$searchid.html".$dogetvar);二、打开\e\search\result\index.php 20行左右,找到:
代码如下:
//搜索结果$searchid=(int)$_GET['searchid'];在前面添加分页函数://增加分页函数function page10($num,$line,$page_line,$start,$page,$search){global $fun_r;if($num<=$line){return '';}$search=RepPostStr($search,1);$url=$public_r['newsurl'].'search';$snum=2;//最小页数$totalpage=ceil($num/$line);//取得总页数$firststr=' '.$num.' ';//上一页if($page<>0){$toppage=''.$fun_r['startpage'].' ';$pagepr=$page-1;$prepage=''.$fun_r['pripage'].'';}//下一页if($page!=$totalpage-1){$pagenex=$page+1;$nextpage=' '.$fun_r['nextpage'].'';$lastpage=' '.$fun_r['lastpage'].'';}$starti=$page-$snum<0?0:$page-$snum;$no=0;for($i=$starti;$i<$totalpage&&$no<$page_line;$i++){$no++;if($page==$i){$is_1="";$is_2="";}else{$is_1='';$is_2="";}$pagenum=$i+1;$returnstr.=" ".$is_1.$pagenum.$is_2;}$returnstr=$firststr.$toppage.$prepage.$returnstr.$nextpage.$lastpage;return $returnstr;}
然后在48行左右找到:
代码如下:
$listpage=page1($num,$line,$page_line,$start,$page,$search);
修改为:
代码如下:
$listpage=page10($num,$line,$page_line,$start,$page,$search);
修改:
代码如下:
$search="&searchid=".$searchid;
为:
代码如下:
$search="$searchid";
三、添加伪静态规则(例子为Apache,自己修改为对应的).
代码如下:
#搜索RewriteRule ^search-(.+?)-(.+?)\.html$ /e/search/result/index\.php\?page=$1&searchid=$2
四、修改搜索模板中的提交地址为绝对地址:
比如:
代码如下: