Pagination 使用Jekyll分页避免多个菜单项
我正在使用JekyllPaginate插件为我的博客创建多个页面。为了确保分页工作正常,我创建了一个名为Pagination 使用Jekyll分页避免多个菜单项,pagination,jekyll,liquid,Pagination,Jekyll,Liquid,我正在使用JekyllPaginate插件为我的博客创建多个页面。为了确保分页工作正常,我创建了一个名为blog的单独目录,其中包含一个index.html文件。在这个index.html文件的前面,我指定了布局、标题和顺序: --- layout: default title: Blog order: 8 --- 标题值由Jekyll提取,用于在我的网站主页上创建名为“Blog”的菜单项。但是,一旦启用分页,所有帖子都被拆分为多个页面,每个页面都会有一个标题“Blog”。这将导致多个菜单
blog
的单独目录,其中包含一个index.html
文件。在这个index.html
文件的前面,我指定了布局、标题和顺序:
---
layout: default
title: Blog
order: 8
---
标题
值由Jekyll提取,用于在我的网站主页上创建名为“Blog”的菜单项。但是,一旦启用分页,所有帖子都被拆分为多个页面,每个页面都会有一个标题“Blog”。这将导致多个菜单项“Blog”。我想只有一个菜单项叫“博客”
我已尝试将paginator创建的其他页面的页面标题重置为“空”,方法是将此代码插入index.html
:
{% if paginator.page > 1 %}
{% assign page.title = '' %}
{% endif %}
似乎
page.title
不是一个变量,而是一个对象。因此,作业无效。如何扭转它,因此在构建菜单时检查paginator.page<2
?对我来说,这似乎是一个更符合逻辑的解决方案。Allo,我认为您不能从paginator.page.title或page.title更改标题,即使您将其指定为'
为了解决这个问题,我改变了导航栏中标题的呈现方式,确保标题不会重复两次
{%assign name_page=”“%}
{site.pages%中的页面为%s}
{%如果名称\页面包含page.title%}
{%else%}
|
{%endif%}
{%assign name_page=page.title | append:name_page%}
{%endif%}
{%endfor%}
因此,基本上它会将标题添加到
name\u页面中,如果标题出现两次,则不会打印页面标题。我区分分页url,它们是/blog/,/blog/page1/。。。。我只打印不包含“页面”的页面
{%-页中的p-%}
{%-除非p.url包含'page'-%}
{%-end除非-%}
{%endfor%}
您也可以使用,除非与相反
{% assign tempPage = "" %}
{% for page in site.pages %}
{% unless tempPage contains page.title %}
{% comment %} list out the pages {% endcomment %}
{{ page.title }}
{% endunless %}
{% assign tempPage = page.title | append: tempPage %}
{% endfor %}
在这里,我们将前面列出的page.title
附加到tempPage
中,只有当tempPage
循环中不包含当前页面的标题时,页面才会被列出另一个优雅的解决方案是在按顺序对站点页面进行排序时删除重复条目。这可以在创建一组已排序的页面时,应用液体选项uniq
实现。要执行此操作,请将默认Minima安装中的header.html
文件复制到Jekyll\u includes
目录中,并在
环境中引入更改:
<div class="trigger">
{% assign sorted_pages = site.pages | uniq:"title" | sort:"order" %}
{% for my_page in sorted_pages %}
{% if my_page.title %}
<a class="page-link" href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a>
{% endif %}
{% endfor %}
</div>
{%assign sorted_pages=site.pages | uniq:“title”| sort:“order”%}
{已排序的\u页%中我的\u页的百分比}
{%if my_page.title%}
{%endif%}
{%endfor%}
<div class="trigger">
{% assign sorted_pages = site.pages | uniq:"title" | sort:"order" %}
{% for my_page in sorted_pages %}
{% if my_page.title %}
<a class="page-link" href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a>
{% endif %}
{% endfor %}
</div>