Jekyll转换WordPress博客的新手,我想在我的类别布局中添加分页。在_layouts
目录中,我创建了一个名为 category.html 的文件。我可以使用以下方法成功渲染特定类别:
category.html:
---
layout: default
---
{% assign catName = page.title | string %}
{% for post in site.categories[catName] %}
<p>{{ post.title }}</p>
{% endfor %}
在遵循Jekyll's Pagination documentation之后,我尝试对某个类别的帖子进行分页:
{% for foobar in paginator.posts %}
<p>{{ foobar.title }}</p>
{% endfor %}
代码不呈现任何内容。根据我的研究,Github Pages限制了可以使用哪些插件,并且我无法验证是否允许jekyll-paginate-v2。
我的文件结构:
_config.yml:
plugins:
- jekyll-feed
## - jekyll-paginate-v2
- jekyll-paginate
exclude:
- Gemfile
- Gemfile.lock
collections:
category:
output: true
defaults:
scope:
path: ""
type: category
values:
layout: "category"
paginate: 1
paginate_path: "/page:num/"
宝石文件:
gem "github-pages", group: :jekyll_plugins
group :jekyll_plugins do
gem "jekyll-feed", "~> 0.6"
## gem "jekyll-paginate-v2", "~> 1.7"
gem "jekyll-paginate"
end
研究
对于Github Page上的Jekyll网站,我如何为该类别创建分页以仅呈现该类别的帖子?这将等同于WordPress的category.php。
答案 0 :(得分:1)
分页仅对所有帖子进行分页,而不对类别或标签进行分页。
Paginate V2甚至对集合执行此操作。但是您不能在Github页面(allowed plugins)上运行此插件。
两种解决方案:
在分支中发布您的代码,在本地生成您的网站(或使用Travis Continuous Integration这样的服务,该项目对于开源项目是免费的),然后在另一网站中发布(或让您的CI发布)您生成的代码分支。
使用像Netlify这样的现代托管服务提供商,允许您使用任何插件。