酷熊网 酷熊网

yzncms二开 栏目分页伪静态 如list/1_1.html

yzncms基于thinkphp框架 那么伪静态当然少不了写路由来实现的

案例如:
www.***.com/list/1.htm?page=2

伪静态 :www.***.com/list/1_1.html 


打开routeroute_cms.php 找到

Route::rule('lists/:catid/[:condition]', 'cms/index/lists')->pattern(['catid' => 'd+', 'condition' => '[0-9_&=a-zA-Z]+']);

在下方增加

Route::rule('lists/[:catid]/[:condition]_:page', 'cms/index/lists')->pattern(['catid' => 'd+', 'condition' => '[0-9_&=a-zA-Z]+', 'page' => 'd+']);


然后找到分页类   applicationcmspaginatorPage.php  

找到getAvailablePageWrapper方法 给一下判断替换


直接替换如下方法

protected function getAvailablePageWrapper($url, $page)
    {
        preg_match("/d+/",$url,$urls);
        if(is_numeric($urls['0'])){
            if($page == 1){
                $url=$urls['0'].".html";
            }else{
                $url=$urls['0']."_".$page.".html";
            }
        }

        if($page == '»'){
            $sum=$this->currentPage()+1;
            $url=$urls['0']."_".$sum.".html";
        }
        if($page == '«'){
            $sum=$this->currentPage()-1;
            if($sum == 1){
                $url=$urls['0'].".html";
            }else{
                $url=$urls['0']."_".$sum.".html";
            }
            
        }
        return '<li><a href="' . htmlentities($url) . '">' . $page . '</a></li>';
    }

 

修改好 务必 更新一下缓存就可以了  

PS:   由于工作时间原因   我只写了 URL模式:数字  标识的我没写上



本站声明:本站所有好东西均来源于互联网,不保证100%完整、不提供任何技术支持,分享目的仅限于学习和测试,一切商业行为与本站无关,下载后请在24小时内删除。请勿用于商业用途,如需商业使用请向官方购买授权,由于使用该资源引起的侵权行为与本站无关!如有侵权,请联系winnerzyy#vip.qq.com(将#换为@)及时删除!

赞 ( 4) 打赏

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏