最近、ページネーションで問題が発生しました。たまたま 100 ページほどあるため、明らかにページネーションが長くなりすぎています。
今、いくつかのリンクを削除してこれを防ぎたいので、代わりに
1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10
として示したい。
1 - 2 - 3 - 4 - 5 - ... - 10
または、4ページ目にいるとき
1 - ... - 4 - 5 - 6 - ... 10
現時点で、ページネーションを表示するスクリプトは次のようになります。
$links = array();
for($i = 0; $i < $totalPages; $i++) {
array_push($links, $i);
}
foreach($links as $pageLink) {
if($pageLink == $page) {
$pagination .= "<li><a href='" . BASE_URL . $url . $pageLink . ".html' class='active'>" . ($pageLink + 1) . "</a></li>";
} else {
if($pageLink === '...') {
$pagination .= "<li><a href='#'>...</a></li>";
} else {
$pagination .= "<li><a href='" . BASE_URL . $url . $pageLink . ".html'>" . ($pageLink + 1) . "</a></li>";
}
}
}
これを簡単に調整できるように、すべてのリンクを配列に追加しましたが、そのようなページネーションを取得する方法がわかりません。