1. 程式人生 > >laravel5.5中新增對分頁樣式的修改上一頁和下一頁

laravel5.5中新增對分頁樣式的修改上一頁和下一頁

laravel自帶的分頁樣式有點醜,laravel支援自定義樣式的,

想把上一頁和下一頁顯示成漢字而不是<<和>>

百度了一下都是去重寫分頁的函式render,於是打開了laravel分頁的原始碼;

image.png

render()和links()方法是支援傳遞檢視的;

在views檢視目錄下建立common/pagination.blade.php檔案;程式碼如下,只需要把laravel自帶的default改一下

@if ($paginator->hasPages())
    <ul class="pagination">
        {{-- Previous Page Link --}}
        @if ($paginator->onFirstPage())
            <li class="page-item disabled"><span class="page-link">第一頁</span></li>
        @else
            <li class="page-item"><a class="page-link" 
            href="{{ $paginator->previousPageUrl() }}" rel="prev">上一頁</a></li>
        @endif

        {{-- Pagination Elements --}}
        @foreach ($elements as $element)
            {{-- "Three Dots" Separator --}}
            @if (is_string($element))
                <li class="page-item disabled">
                <span class="page-link">{{ $element }}</span></li>
            @endif

            {{-- Array Of Links --}}
            @if (is_array($element))
                @foreach ($element as $page => $url)
                    @if ($page == $paginator->currentPage())
                        <li class="page-item active">
                        <span class="page-link">{{ $page }}</span></li>
                    @else
                        <li class="page-item">
                        <a class="page-link" href="{{ $url }}">
                        {{ $page }}</a></li>
                    @endif
                @endforeach
            @endif
        @endforeach

        {{-- Next Page Link --}}
        @if ($paginator->hasMorePages())
            <li class="page-item"><a class="page-link" 
            href="{{ $paginator->nextPageUrl() }}" rel="next">下一頁</a></li>
        @else
            <li class="page-item disabled"><span 
            class="page-link">最後一頁</span></li>
        @endif
    </ul>
@endif

想要改成其他的樣式只需要自己去寫一些css就行;

然後在檢視中呼叫

{{$lists->links('common.pagination')}}

效果如下圖;

image.png