

Laravel 5.0 でPaginationを行う際、ページ番号などを表示せずに「Next」「Prev」の文字でページリンクをつけようとしています。  
通常そのような場合 `simplePaginate()` を使うと思いますが、`render()` するとギュメ記号（`&laquo;
&raquo;`）のみが表示され、文字はありません。

言語ファイル`resources/lang/en/pagination.php`を見ると`'previous' => '&laquo;
Previous'`のような記述があったのですが書き換えても変化がありません。

`vendor`フォルダの`SimpleBootstrapThreePresenter.php`にある `getPreviousButton()`
の引数を指定することでこの文字が代わる仕組みのようですが、自分でこれに代わるカスタムクラスを作る必要があるのでしょうか？


CC BY-SA 4.0
2015-08-20T10:18:53.177
14669
2022-02-28T02:00:40.060
2020-10-21T23:08:14.443
32986
10083
question
php laravel
Laravel 5.0のPaginationで「Next」「Prev」の文字を表示したい


config/app.phpで

[code]

    'locale' => 'ja'
    
[/code]

と設定しているようでしたら、  
resources/lang 内に jaディレクトリを作成し、その中に  
pagination.php

[code]

    <?php
    
    return [
    
        'previous' => '&laquo; 前へ',
        'next'     => '次へ &raquo;',
    
    ];
    
[/code]

といった感じで設置すれば動作すると思います。


CC BY-SA 3.0
2015-09-24T06:46:56.797
16893
2015-09-24T06:46:56.797
9025
14669
answer


SimpleBootstrapThreePresenter の render() 内にある、 `$this->getPreviousButton()` と
`$this->getNextButton()`
の引数に値を入れられるような仕組みは用意されていないようなので、自分でこれに代わるカスタムクラスを作る必要があると思われます。

SimpleBootstrapThreePresenter を継承して、render
をオーバーライドし、`$this->getPreviousButton()` と `$this->getNextButton()`
に値を渡せるようにすることで実現できそうです。

[code]

    public function render()
    {
        if ($this->hasPages())
        {
            return sprintf(
                '<ul class="pager">%s %s</ul>',
                $this->getPreviousButton(trans('pagination.previous')),
                $this->getNextButton(trans('pagination.next'))
            );
        }
        return '';
    }
    
[/code]


CC BY-SA 3.0
2017-01-11T17:28:10.383
31782
2017-01-11T17:28:10.383
189
14669
answer