diff options
Diffstat (limited to '_includes/posts/paginator.html')
-rw-r--r-- | _includes/posts/paginator.html | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/_includes/posts/paginator.html b/_includes/posts/paginator.html new file mode 100644 index 0000000..471383c --- /dev/null +++ b/_includes/posts/paginator.html @@ -0,0 +1,36 @@ +{% comment %} + Page links, inspired by the example at the bottom of + https://jekyllrb.com/docs/pagination/. +{% endcomment %} +{% if site.posts.size != 0 %} + {% comment %} + Link to page 1 is tricky. If site.paginate_path is used, then we cannot + simply use /. This is a silly attempt to get the proper page 1 link. + {% endcomment %} + {% if paginator.page == 1 %} + {% assign page1_url = page.url %} + {% else %} + {% assign page1_url = page.url | split: '/' | pop | join: '/' | append: '/' %} + {% endif %} +<ul class="pagination"> + {% if paginator.previous_page %} + <li><a href="{{ paginator.previous_page_path | relative_url }}"><span class="glyphicon glyphicon-chevron-left"></span> Prev</a></li> + {% else %} + <li class="disabled"><a href="#"><span class="glyphicon glyphicon-chevron-left"></span> Prev</a></li> + {% endif %} + {% for page_number in (1..paginator.total_pages) %} + {% if page_number == paginator.page %} + <li class="active"><a href="#">{{ page_number }}</a></li> + {% elsif page_number == 1 %} + <li><a href="{{ page1_url | relative_url }}">{{ page_number }}</a></li> + {% else %} + <li><a href="{{ site.paginate_path | replace: ':num', page_number | relative_url }}">{{ page_number }}</a></li> + {% endif %} + {% endfor %} + {% if paginator.next_page %} + <li><a href="{{ paginator.next_page_path | relative_url }}">Next <span class="glyphicon glyphicon-chevron-right"></span></a></li> + {% else %} + <li class="disabled"><a href="#">Next <span class="glyphicon glyphicon-chevron-right"></span></a></li> + {% endif %} +</ul> +{% endif %} |