diff --git a/models/PageIndex.php b/models/PageIndex.php index 0c988cc..9dfd85f 100644 --- a/models/PageIndex.php +++ b/models/PageIndex.php @@ -155,24 +155,21 @@ class PageIndex public function getLink($start = null, $order = null, $dir = null) { - $url = $this->base_url; - $amp = strpos($this->base_url, '?') ? '&' : '?'; + echo $start, "\n"; + $page = !is_string($start) ? ($start / $this->items_per_page) + 1 : $start; + $url = $this->base_url . str_replace('%PAGE%', $page, $this->page_slug); - if (!empty($start)) - { - $page = $start !== '%d' ? ($start / $this->items_per_page) + 1 : $start; - $url .= strtr($this->page_slug, ['%PAGE%' => $page, '%AMP%' => $amp]); - $amp = '&'; - } + $urlParams = []; if (!empty($order)) - { - $url .= $amp . 'order=' . $order; - $amp = '&'; - } + $urlParams['order'] = $order; if (!empty($dir)) + $urlParams['dir'] = $dir; + + if (!empty($urlParams)) { - $url .= $amp . 'dir=' . $dir; - $amp = '&'; + $queryString = (strpos($uri, '?') !== false ? '&' : '?'); + $queryString .= http_build_query($urlParams); + $url .= $queryString; } return $url;