PHP分享
您现在的位置是:博客主页 > Web教程 > PHP分享

ThinkPHP+OneThink 开启路由后解决分页url问题

By Dianthink on PHP分享 Time 2015-04-11 from:互联网 3019人已围观
简介:    ThinkPHP+OneThink 开启路由后解决分页url问题,开启路由后解决分页url问题这里只是举个例子
OneThink开启路由后解决分页url问题
这里只是举个例子,只是提供一个想法
调用:
$id = I('id');
$Page = new ThinkPage($count,10);
$urlrule = '/news-'.$id.'-{page}';//新增规则{page}为当前页用于分页函数替换
$show = $Page->show($urlrule);//新增参数
$list = $Article->where(array('catid'=>$id))->order('inputtime desc')->limit($Page->firstRow.','.$Page->listRows)->select();
修改PAGE类,可以修改后放到自己的类库中调用,这样不影响更新:
修改show函数:
public function show($urlrule=''){}//增加urlrule参数,需要改变url时就可以调用
找到
/* 生成URL */
$this->parameter[$this->p] = '[PAGE]';
$this->url = U(ACTION_NAME, $this->parameter);
修改为
if (empty($urlrule)) {//新增判断,不影响原先无参数使用
    $this->parameter[$this->p] = '[PAGE]';
    $this->url = U(ACTION_NAME, $this->parameter);
}else {
    $urlrule = str_replace('{page}', urlencode('[PAGE]'), $urlrule);
    $this->url = U($urlrule);
}
当然 如果你觉得每次改变路由就需要改代码麻烦时这里推荐一个办法:将urlrule做成一个数据库表,要哪个url就调用哪一条 后台增加url管理功能
相关文章
文章评论

( 0 )