另一种局部方法实现---thinkphp框架的分页伪静态如何优化实现

技术知识
0 1479
小师傅 小师傅2020-05-28
积分:2397

上一篇文章刚提了一种全局改造的方法thinkphp框架的分页伪静态如何优化实现

通过上面那种方法我也成功实现的改造,但是在使用过程,发现还是有问题;

比如:

    这个伪静态我只需要在前台实现这个功能,去配置路由,后台我不需要实现分页伪静态的功能,不然还得去配置路由,比较麻烦,也导致我开始写的后台分页访问不了,于是,这里提供了一个局部分页伪静态的方法。

    //进入分类文章列表
    public function articleList($id,$page=0){
	$arr = db('nav')->where(['pid'=>$id,'isoff'=>1])->field('id')->select();
	$arr1 = [$id];
	foreach ($arr as $v){
		$arr1[] = $v['id'];
	}
	$list = db('article a')->join('nav n','n.id=a.nav_id')
	->where('a.isoff',1)->where('a.nav_id','in',$arr1)
	->field('a.*,n.name')->order('a.start_time','DESC')
	
	//主要是在分页paginate这里改造,别的地方不需要改动
	->paginate(10,false,[$page,'path' => '/articleList/'.$id.'-[PAGE].html']);
	
        $nav = Nav::get($id);
        $page = $list->render();
        $this->assign(array(
            'article'=>$list,
            'nav'  =>$nav,
            'page' =>$page
        ));
        return $this->fetch('list');
    }


下面就是路由的配置,和上篇文章讲的一样

 'articleList/<id>$' => ['Index/articleList',['method'=>'get','ext'=>'html']],  //列表文章
 'articleList/<id>-<page>' => ['Index/articleList',['method'=>'get','ext'=>'html'],['page'=>'\d+']],



实现的结果是这样的 http://www.small-master.com/articleList/57-2.html

精选帖子
Android 可可影视 v3.3.6无广告纯净版 1758
Android QQ音乐 v11.3.7 定制版解锁免费听歌无广告版 2192
Android 草图大师SKP v1.5 解锁会员版 7643
Android OmoFun追漫神器 v4.2.1 无广告绿色版 4645
AdobeGenP Adobe全家桶系列激活工具 v3.5.0/3.4.14.1 绿色版 5226
Android 七猫免费听书 v1.4 解锁高级版 3684
超良心的抢票神器——Bypass1.16 3232
Android 玲珑加速器 v6.10.9.40 解锁无限时间 2061
Android 大师兄影视 v3.3.8 去广告会员版 1187
热门帖子
玫瑰克隆,一键爆款工具详细介绍和使用教程,自媒体必备 177
好用的梯子软件推荐-稳定好用的手机梯子软件+电脑好用的梯子及外网加速器指南(免费试用升级付费) 104
安卓手机平板上运行Windows软件游戏 Winlator11.0汉化中文版最新版 93
拳皇 WingEX1.2 前瞻版最新修复版 2025.11.23 格斗游戏拳皇EX改版游戏 91
B站APP Bilibili哔哩哔哩(内置哔哩漫游v1.7.0) v8.72.0哔哩漫游版 各种去广告净化 88
30T电脑单机游戏资源下载 单机游戏+单机网游合集下载 1000+3A大型游戏 87
多多虚拟类目新玩法:机器人全程帮助发货和回客服,轻松实现月入1-5W目标 79
应用管家TV版 v1.8.0 电视应用和文件管理器 应用提取 传输文件 网盘 支持车机+平板 75
玫瑰克隆,自媒体必备,一键爆款工具详细介绍和使用教程 41