服务器之家:专注于服务器技术及软件下载分享
分类导航

DEDECMS|帝国CMS|Discuz|PHPCMS|Wordpress|ZBLOG|ECSHOP|苹果CMS|极致CMS|CMS系统|

服务器之家 - 建站程序 - 帝国CMS - 帝国CMS搜索页伪静态实现方法

帝国CMS搜索页伪静态实现方法

2019-09-04 13:07帝国CMS教程网 帝国CMS

这篇文章主要为大家介绍了帝国CMS搜索页伪静态实现方法,可实现帝国CMS搜索结果的伪静态显示,在使用帝国CMS二次开发中非常具有实用价值,需要的朋友可以参考下

本文实例讲述了帝国CMS搜索页伪静态实现方法。分享给大家供大家参考。具体实现方法如下:

帝国CMS搜索页伪静态教程步骤:

一、打开esearchindex.php 411行左右,找到:
 

复制代码
代码如下:
Header("Location:result/?searchid=$searchid".$dogetvar);

 

修改为:
 

复制代码
代码如下:
Header("Location:$public_r[newsurl]search-0-$searchid.html".$dogetvar);

 

二、打开esearch esultindex.php 20行左右,找到:

  1. //搜索结果  
  2. $searchid=(int)$_GET['searchid'];  
  3. 在前面添加分页函数:</p> <p>//增加分页函数  
  4. function page10($num,$line,$page_line,$start,$page,$search){  
  5. global $fun_r;  
  6. if($num<=$line)  
  7. {  
  8. return '';  
  9. }  
  10. $search=RepPostStr($search,1);  
  11. $url=$public_r['newsurl'].'search';  
  12. $snum=2;//最小页数  
  13. $totalpage=ceil($num/$line);//取得总页数  
  14. $firststr='<a title="'.$fun_r['trecord'].'">&nbsp;'.$num.'&nbsp;</a>&nbsp;&nbsp;';  
  15. //上一页  
  16. if($page<>0)  
  17. {  
  18. $toppage='<a href="'.$url.'-0-'.$search.'.html">'.$fun_r['startpage'].'</a>&nbsp;';  
  19. $pagepr=$page-1;  
  20. $prepage='<a href="'.$url.'-'.$pagepr.'-'.$search.'.html">'.$fun_r['pripage'].'</a>';  
  21. }  
  22. //下一页  
  23. if($page!=$totalpage-1)  
  24. {  
  25. $pagenex=$page+1;  
  26. $nextpage='&nbsp;<a href="'.$url.'-'.$pagenex.'-'.$search.'.html">'.$fun_r['nextpage'].'</a>';  
  27. $lastpage='&nbsp;<a href="'.$url.'-'.($totalpage-1).'-'.$search.'.html">'.$fun_r['lastpage'].'</a>';  
  28. }  
  29. $starti=$page-$snum<0?0:$page-$snum;  
  30. $no=0;  
  31. for($i=$starti;$i<$totalpage&&$no<$page_line;$i++)  
  32. {  
  33. $no++;  
  34. if($page==$i)  
  35. {  
  36. $is_1="<b>";  
  37. $is_2="</b>";  
  38. }  
  39. else  
  40. {  
  41. $is_1='<a href="'.$url.'-'.$i.'-'.$search.'.html">';  
  42. $is_2="</a>";  
  43. }  
  44. $pagenum=$i+1;  
  45. $returnstr.="&nbsp;".$is_1.$pagenum.$is_2;  
  46. $returnstr=$firststr.$toppage.$prepage.$returnstr.$nextpage.$lastpage;  
  47. 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,自己修改为对应的).
 

复制代码
代码如下:
#搜索</p> <p>RewriteRule ^search-(.+?)-(.+?).html$ /e/search/result/index.php?page=$1&searchid=$2

 

四、修改搜索模板中的提交地址为绝对地址:

比如:
 

复制代码
代码如下:
<form action='http://www.XXXX.com/e/search/index.php' method="post" name="search_news" id="search_news">

 

提示:不建议使用相对地址

希望本文所述对大家的帝国CMS建站有所帮助。

延伸 · 阅读

精彩推荐