我刚刚将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
。
我哪里错了?
答案 0 :(得分:0)
问题是,如果将baseurl设置为""
,则会将新页码附加到现有URL。解决方案是先加/
:
{{ site.paginate_path | prepend: '/' | prepend: site.baseurl | replace: ':num', page | replace: '//', '/' }}
如果baseurl以反斜杠开头,则替换过滤器会处理此问题。