tp5 修改默认的分页url

时间:2023-03-09 17:14:20
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,然后修改成我们需要的前缀就可以了。

完事!