Jekyll分页链接

时间:2016-02-22 21:19:38

标签: pagination jekyll

我刚刚将Jekyll更新为3.0.1,现在我的分页链接已被破坏。我使用代码from the Jekyll documentation来建立每个分页页面的链接。

{% for page in (1..paginator.total_pages) %}
    {% if page == paginator.page %}
      <em>{{ page }}</em>
    {% elsif page == 1 %}
      <a href="{{ paginator.previous_page_path | prepend: site.baseurl | replace: '//', '/' }}">{{ page }}</a>
    {% else %}
      <a href="{{ site.paginate_path | prepend: site.baseurl | replace: '//', '/' | replace: ':num', page }}">{{ page }}</a>
    {% endif %}
  {% endfor %}

但是,对于else情况,它生成的URL不正确。例如,如果我在第3页上,则第4页的链接为example.com/page3/page4(不存在),而不是example.com/page4

我哪里错了?

1 个答案:

答案 0 :(得分:0)

问题是,如果将baseurl设置为"",则会将新页码附加到现有URL。解决方案是先加/

{{ site.paginate_path | prepend: '/' | prepend: site.baseurl | replace: ':num', page | replace: '//', '/' }}

如果baseurl以反斜杠开头,则替换过滤器会处理此问题。