From b3a5693f084ab63c65e391ecf50764f50d886392 Mon Sep 17 00:00:00 2001 From: Terry <2358269014@qq.com> Date: Mon, 28 Oct 2019 11:17:29 +0800 Subject: [PATCH] =?UTF-8?q?appfront=20=E9=A1=B5=E7=A0=81=E7=9A=84=E6=9B=B4?= =?UTF-8?q?=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../theme/base/front/widgets/page.php | 10 +++--- app/appfront/widgets/Page.php | 33 +++++++++++-------- 2 files changed, 24 insertions(+), 19 deletions(-) diff --git a/app/appfront/theme/base/front/widgets/page.php b/app/appfront/theme/base/front/widgets/page.php index 58d8f473..6ba78f8d 100644 --- a/app/appfront/theme/base/front/widgets/page.php +++ b/app/appfront/theme/base/front/widgets/page.php @@ -14,28 +14,28 @@ < - + - + - + - + - + > diff --git a/app/appfront/widgets/Page.php b/app/appfront/widgets/Page.php index 29de259b..86eea97e 100644 --- a/app/appfront/widgets/Page.php +++ b/app/appfront/widgets/Page.php @@ -21,9 +21,11 @@ class Page public $numPerPage; public $countTotal; public $page; + public $pageSection; // = 'p_comment'; public function getLastData() { + $this->page = $this->page ? $this->page : 'p'; $spaceShowNum = 4; $productNumPerPage = $this->numPerPage; $countTotal = $this->countTotal; @@ -134,7 +136,7 @@ class Page $url = $this->getPageUrl($pageNum, 1); //Yii::$service->url->category->getFilterChooseAttrUrl($this->page,1); $firstSpaceShow = [ - 'p' => 1, + $this->page => 1, 'url' => $url, ]; } @@ -142,7 +144,7 @@ class Page $url = $this->getPageUrl($pageNum, $maxPageNum); //Yii::$service->url->category->getFilterChooseAttrUrl($this->page,$maxPageNum); $lastSpaceShow = [ - 'p' => $maxPageNum, + $this->page => $maxPageNum, 'url' => $url, ]; } @@ -151,7 +153,7 @@ class Page if (is_array($frontPage) && !empty($frontPage)) { foreach ($frontPage as $p) { $frontPageU[] = [ - 'p' => $p, + $this->page => $p, 'url' => $this->getPageUrl($pageNum, $p), //Yii::$service->url->category->getFilterChooseAttrUrl($this->page,$p), ]; @@ -162,7 +164,7 @@ class Page if (is_array($behindPage) && !empty($behindPage)) { foreach ($behindPage as $p) { $behindPageU[] = [ - 'p' => $p, + $this->page => $p, 'url' => $this->getPageUrl($pageNum, $p), //Yii::$service->url->category->getFilterChooseAttrUrl($this->page,$p), ]; @@ -173,7 +175,7 @@ class Page if ($pageNum > 1) { $prevPage = $pageNum - 1; $prevPage = [ - 'p' => $prevPage, + $this->page => $prevPage, 'url' => $this->getPageUrl($pageNum, $prevPage), //Yii::$service->url->category->getFilterChooseAttrUrl($this->page,$prevPage), ]; @@ -181,15 +183,15 @@ class Page if ($pageNum != $maxPageNum) { $nextPage = $pageNum + 1; $nextPage = [ - 'p' => $nextPage, + $this->page => $nextPage, 'url' => $this->getPageUrl($pageNum, $nextPage), //Yii::$service->url->category->getFilterChooseAttrUrl($this->page,$nextPage), ]; } $currentPage = [ - 'p' => $pageNum, + $this->page => $pageNum, ]; - //var_dump($frontPageU); + //var_dump($currentPage);exit; return [ 'firstSpaceShow'=> $firstSpaceShow, 'lastSpaceShow' => $lastSpaceShow, @@ -201,25 +203,28 @@ class Page 'nextPage' => $nextPage, 'hiddenFrontStr'=> $hiddenFrontStr, 'hiddenBehindStr'=>$hiddenBehindStr, + 'pageParam' => $this->page, ]; } public function getPageUrl($currentPage, $showPage) { $currentUrl = Yii::$service->url->getCurrentUrl(); - $pVal = Yii::$app->request->get('p'); + $pVal = Yii::$app->request->get($this->page); if ($pVal) { - $currentPageStr = 'p='.$pVal; - $showPageStr = 'p='.$showPage; + $currentPageStr = $this->page.'='.$pVal; + $showPageStr = $this->page.'='.$showPage; $url = str_replace($currentPageStr, $showPageStr, $currentUrl); } else { if (strstr($currentUrl, '?')) { - $url = $currentUrl.'&p='.$showPage; + $url = $currentUrl.'&'.$this->page.'='.$showPage; } else { - $url = $currentUrl.'?p='.$showPage; + $url = $currentUrl.'?'.$this->page.'='.$showPage; } } - + if ($this->pageSection) { + $url = $url . '#' . $this->pageSection; + } return [ 'url' => $url, ]; -- GitLab