2019/7/18
Tag : craft-cms
Craft CMS の paginate タグが便利過ぎた #craftcms
Craft CMS で検索結果やエントリを一覧するときなどにページ分割してくれるタグとして paginate タグがある。
{% paginate %} タグ | Craft 3 ドキュメント
https://docs.craftcms.com/v3/j…
この辺ちゃんと使ったことなかったのだけど、今回始めて触ってみたら便利すぎてびっくり。
ドキュメントにもある感じで
{% set query = craft.entries().section('blog').limit(10) %}
{% paginate query as pageInfo, pageEntries %}
{% for entry in pageEntries %}
<article>
<h1>{{ entry.title }}</h1>
{{ entry.body }}
</article>
{% endfor %}
でやればとりあえず分割できてしまう。
いやー、びっくり。
そのうえ、ページ分割したらpaginationのところを表示させないといけないのだけど、変数 pageInfo がまた便利。
{% paginate %} タグ | Craft 3 ドキュメント
https://docs.craftcms.com/v3/j…
前後のページのリンクとかはとりあえずおいておいて、分割したのが何ページで、何件目なのか、とかをこれだけで出せる。
{{pageInfo.total}}件中 {{ pageInfo.first }} - {{ pageInfo.last }}件表示
これまで、1ページに表示させる数がいくつで、今が何ページ目で、とかやって計算してたのがそれすらいらない。
flexibleSearch.js のその辺計算したなー、とか思い出しつつ、あまりに簡単すぎてびっくり。