Jekyll

时间:2015-06-23 21:30:14

标签: pagination jekyll

我正在用Jekyll建立一个网站,只有页面 我想找到一种方法来为页面生成上一个和下一个链接,其中包含order等页面的属性。 有没有什么可以完成这项工作(没有插件)?我只能找到关于帖子的内容。

1 个答案:

答案 0 :(得分:0)

{% assign sortedPages = site.pages | sort:'order' | where: 'published', true %}

{% for p in sortedPages %}
    {% if p.url == page.url %}
        {% if forloop.first == false %}
            {% assign prevIndex = forloop.index0 | minus: 1 %}
            <a href="{{site.baseurl}}{{sortedPages[prevIndex].url}}">
                previous : {{sortedPages[prevIndex].title}}
            </a>
        {% endif %}
        {% if forloop.last == false %}
            {% assign nextIndex = forloop.index0 | plus: 1 %}
            <a href="{{site.baseurl}}{{sortedPages[nextIndex].url}}">
                next : {{sortedPages[nextIndex].title}}
            </a>
        {% endif %}
    {% endif %}
{% endfor %}

这将完成这项工作。

为了过滤您发布的页面,您可以在页面前面添加published变量。

设置变量

published: true - &gt;这是一个布尔值

published: 'true' - &gt;这是一个字符串

使用where filter

| where: 'published', true将测试布尔值

| where: 'published', 'true'将测试字符串