我按照方法安装了paginate v2并对一个集合进行了分页,但是我为paginator创建的每个页面都获得了一个额外的“Example Collection”顶级页面链接。
这是example.md
---
layout: page
title: Example Collection
permalink: /example/
pagination:
enabled: true
---
{% for post in paginator.posts %}
<h1>{{ post.title }}</h1>
{% endfor %}
{% if paginator.total_pages > 1 %}
<ul>
{% if paginator.previous_page %}
<li>
<a href="{{ paginator.previous_page_path | prepend: site.baseurl }}">Newer</a>
</li>
{% endif %}
{% if paginator.next_page %}
<li>
<a href="{{ paginator.next_page_path | prepend: site.baseurl }}">Older</a>
</li>
{% endif %}
</ul>
{% endif %}
这就是我添加到config.yml
的内容# Collections
collections:
examplecol:
output: true
permalink: /:collection/:path/
# Plugin: Pagination (jekyll-paginate-v2)
pagination:
collection : 'examplecol'
enabled : true
debug : false
per_page : 3
#permalink : "/page/:num/"
title : ":title - Page :num of :max"
limit : 0
sort_field : "date"
sort_reverse : true
现在,如果_examplecol
文件夹中有超过3个文件,我会将1个以上的example.md实例作为标题中的页面。
如何在包含所有分页页面的标题中只有一个Example Collection实例?我想我错过了一些愚蠢的话。
我尝试删除example.md YAML中的永久链接条目,但这只是为了让jekyll处理器找不到examplecol / index.html。
答案 0 :(得分:0)
我花了很多试验和错误,但我在标题中找到了解决方案。
当分页器创建包含某些项目的页面时,该站点将它们视为页面并呈现它们。
因此,该网站会找到对my_page.title的所有真实回复并创建页面链接。
<div class="trigger">
{% for my_page in site.pages %}
{% if my_page.title %}
<a class="page-link" href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a>
{% endif %}
{% endfor %}
</div>
由于paginator页面是autogen,你可以将它们过滤掉:
<div class="trigger">
{% for my_page in site.pages %}
{% if my_page.title and my_page.autogen == nil %}
<a class="page-link" href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a>
{% endif %}
{% endfor %}
</div>