tp5 修改默认的分页url

默认分页url:xx.com/xxx?page=1

个人主要感觉不美观,想变成xx.com/xxx/list_1.html这样的

框架本身默认使用的boostrap分页类,目录位置

simplewind\thinkphp\library\think\paginator\driver\Bootstrap.php

调用url的主要是父类Paginator的url方法

simplewind\thinkphp\library\think\Paginator.php

我们首先修改url代码

protected function url($page)
    {
        if ($page <= 0) {
            $page = 1;
        }

        if (strpos($this->options['path'], '[PAGE]') === false) {
            $parameters = [$this->options['var_page'] => $page];
            $path       = $this->options['path'];
        } else {
            $parameters = [];
            $path       = str_replace('[PAGE]', $page, $this->options['path']);
        }
        if (count($this->options['query']) > 0) {
            $parameters = array_merge($this->options['query'], $parameters);
        }
        $path = preg_replace('/\/page\/\d+/','',$path);//修改结果
        // $url = $path;
        if (!empty($parameters)) {

            $url = $path.'/'.$this->options['var_page'].'_'.$page.'.html';//修改结果
            // $url .= '?' . http_build_query($parameters, null, '&');
        }
        return $url . $this->buildFragment();
    }

我们看到url前缀调用的是'var_page'配置文件中的配置

路径是

app\config.php

查找var_page,然后修改成我们需要的前缀就可以了。

完事!

猜你喜欢

转载自www.cnblogs.com/dalaowang/p/10419910.html