在 Laravel 中,自定義分頁樣式需要以下幾個步驟:
首先,你需要創建一個自定義的分頁視圖。在 resources/views
目錄下,創建一個新的文件夾,例如 pagination
,然后在該文件夾中創建一個新的視圖文件,例如 custom.blade.php
。
接下來,打開 custom.blade.php
文件,編寫自定義的分頁樣式。這里是一個簡單的例子:
@if ($paginator->hasPages())
<ul class="pagination">
{{-- Previous Page Link --}}
@if ($paginator->onFirstPage())
<li class="disabled"><span>«</span></li>
@else
<li><a href="{{ $paginator->previousPageUrl() }}" rel="prev">«</a></li>
@endif
{{-- Pagination Elements --}}
@foreach ($elements as $element)
{{-- "Three Dots" Separator --}}
@if (is_string($element))
<li class="disabled"><span>{{ $element }}</span></li>
@endif
{{-- Array Of Links --}}
@if (is_array($element))
@foreach ($element as $page => $url)
@if ($page == $paginator->currentPage())
<li class="active"><span>{{ $page }}</span></li>
@else
<li><a href="{{ $url }}">{{ $page }}</a></li>
@endif
@endforeach
@endif
@endforeach
{{-- Next Page Link --}}
@if ($paginator->hasMorePages())
<li><a href="{{ $paginator->nextPageUrl() }}" rel="next">»</a></li>
@else
<li class="disabled"><span>»</span></li>
@endif
</ul>
@endif
你可以根據需要修改這個視圖,以實現你想要的分頁樣式。
最后,在你的控制器中,當你對查詢結果進行分頁時,使用 paginate()
方法。然后,在你的視圖中,使用 links()
方法并傳遞自定義分頁視圖的路徑,如下所示:
// 在控制器中
$users = User::paginate(10);
// 在視圖中
{{ $users->links('pagination.custom') }}
現在,你應該看到自定義的分頁樣式應用于分頁鏈接了。