最新公告
  • 欢迎您光临站长源码网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 帝国CMS搜索页伪静态实现方法

    正文概述 管理员   2024-09-02   18

    本文介绍帝国CMS搜索页url伪静态实现方法,可实现帝国CMS站内搜索结果页的伪静态显示,在使用帝国CMS二次开发中非常具有实用价值,需要的朋友可以参考下(文末附iis解决方案)

    具体实现方法如下:

    一、打开\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='<a title="'.$fun_r['trecord'].'">&nbsp;'.$num.'&nbsp;</a>&nbsp;&nbsp;';
    //上一页
    if($page<>0)
    {
    $toppage='<a href="'.$url.'-0-'.$search.'.html">'.$fun_r['startpage'].'</a>&nbsp;';
    $pagepr=$page-1;
    $prepage='<a href="'.$url.'-'.$pagepr.'-'.$search.'.html">'.$fun_r['pripage'].'</a>';
    }
    //下一页
    if($page!=$totalpage-1)
    {
    $pagenex=$page+1;
    $nextpage='&nbsp;<a href="'.$url.'-'.$pagenex.'-'.$search.'.html">'.$fun_r['nextpage'].'</a>';
    $lastpage='&nbsp;<a href="'.$url.'-'.($totalpage-1).'-'.$search.'.html">'.$fun_r['lastpage'].'</a>';
    }
    $starti=$page-$snum<0?0:$page-$snum;
    $no=0;
    for($i=$starti;$i<$totalpage&&$no<$page_line;$i++)
    {
    $no++;
    if($page==$i)
    {
    $is_1="<b>";
    $is_2="</b>";
    }
    else
    {
    $is_1='<a href="'.$url.'-'.$i.'-'.$search.'.html">';
    $is_2="</a>";
    }
    $pagenum=$i+1;
    $returnstr.="&nbsp;".$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
    .htaccess文件参考代码
    RewriteEngine on
    RewriteRule ^c-(.+?)-(.+?)\.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">

    IIS伪静态方法:

    https://www.cnblogs.com/ytkah/p/6893217.html


    站长源码网 » 帝国CMS搜索页伪静态实现方法

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    支付宝支付
    余额支付
    ×
    微信扫码支付 0 元