2017-10-31 9 views
0

永遠に続くページネーションボックスを制限したいと思います。 100個のイベントがロードされているとします。 - > 3個のイベントが表示されます。そして、このようなconfig.ymlで上に行くしない[1][2][3][4]....[40]ページネーションボックスが...knp_paginatorを拡張する方法を制限するには?

FYI: Screenshot

答えて

1

これを追加すること:

knp_paginator: 
    page_range: 5 # number of links showed in the pagination menu (e.g: you have 10 pages, a page_range of 3, on the 5th page you'll see links to page 4, 5, 6) 

は、あなたがスライド使用にこれらのいずれかを変更する必要がある場合

template:           
    pagination: '@KnpPaginator/Pagination/sliding.html.twig' 

@KnpPaginator/Pagination/sliding.html.twig (by default) 
@KnpPaginator/Pagination/twitter_bootstrap_v3_pagination.html.twig 
@KnpPaginator/Pagination/twitter_bootstrap_pagination.html.twig 
@KnpPaginator/Pagination/foundation_v5_pagination.html.twig 
+0

申し訳ありませんが、私はこの前にカップルを試してみました.. –

+0

それはデフォルトのテーマで働いた... –

0

私は、knpページャーがあなたにそれを行うと思います。しかし、それはあなたがこのような何かを行うに上記のテンプレートのいずれかを変更しようとすることができない場合に:その後のように見えるループを見つける

{% if pageCount > maxNumberOfBoxes %} 
     {% set breakpointAdded=true %} 
{% endif %} 

可変制御を設定

をこの

{% for page in pagesInRange %} 
      {% if page != current %} 
       <span class="page"> 
       <a href="{{ path(route, query|merge({(pageParameterName): page})) }}">{{ page }}</a> 
      </span> 
      {% else %} 
       <span class="current">{{ page }}</span> 
      {% endif %} 

     {% endfor %} 

と(もちろん、独自のロジックで)このような何かのためにそれを交換

{% for i in range(0,pageCount) %} 
       {% if i > xBreakpoint and i < yBreakpoint and breakpointAdded == false %} 
        <span class="dots">...</span> 
        {% set breakpointAdded = true %} 
       {% else %} 
        {% if page != current %} 
         <span class="page"> 
          <a href="{{ path(route, query|merge({(pageParameterName): page})) }}">{{ page }}</a> 
         </span> 
        {% else %} 
         <span class="current">{{ page }}</span> 
        {% endif %} 
       {% endif %} 
      {% endfor %} 

この機能があれば、SlidingPaginationクラスからgetPaginationData関数を変更できます。

あなたのために今まで働いていたこと。

+0

それは働いて..ありがとう... –

+0

あなたの答えの一つがこれに従ってくださいこのトピックを終了するには、[doc](https://stackoverflow.com/help/someone-answers)を参照してください。 –

関連する問題