Jekyll给文章列表分页的标题加入页码

最近给文章列表的分页标题加入了页码,它可以防止分页跟主页混淆。开始时想偷懒在各大搜索引擎搜索相关教程,但完全没有找到想要的结果!只能自己动手了。。 具体效果可以看本博客!

获取页码

我们可以用{{ paginator.page }}获取分页页码,貌似直接用{{ page }}也可以!

加入页码

  • _config.yml里配置 title: 你的网站名称
  • 在头部文件里面的<head>...</head>内找到<title>...</title>把它改成以下代码就完成分页标题加入页码了
<title>{% if page.title %}{{ page.title | escape }} - {{ site.title | escape }}{% endif %}{{ paginator.page }} 页 - {{ site.title | escape }}</title>

{% if page.title %} ... {% endif %} 这句是判断页面是否单独设置有标题,如果有则显示设置的标题,一般其他页面都单独设置有标题的,只有主页没有单独设置,所以endif后面就是实现页码的核心部分了。每个主题的实现方法可能不太一样,请灵活变通!

优化版本

按照上面的代码设置后会发现主页的标题也会显示页码,这太难看了,下面让我们实现页码只在分页显示!

  • 首先我们要判断哪个页面是主页,一般主页都是第一页吧。所以代码是
{% if paginator.page == 1 %}{{ site.title | escape }}
  • 最后只需要把代码合并起来就完美了
<title>{% if page.title %}{{ page.title | escape }} - {{ site.title | escape }}{% else %}{% if paginator.page == 1 %}{{ site.title | escape }}{% else %}{{ paginator.page }} 页 - {{ site.title | escape }}{% endif %}{% endif %}</title>