首页 > 解决方案 > 在 jekyll 的 {{ path.url }} 中获取输出

问题描述

在 jekyll 站点中,我创建了categories.html包含以下内容的页面:

---
layout: default
permalink: /categories
title: Categories
---
{% assign current_cat = {{ page.url }} | split: "/" | last %}
{% assign posts = site.categories[current_cat] %}
<ul>
    {% for post in posts %}
    <li><a href="{{post.url | absolute_url}}">{{post.title}}</a></li>
    {% endfor %}
</ul>

然后我想列出所有类别的帖子(仅在页面中发布 1 个类别)

例子:

-> request: http://127.0.0.1:4000/categories/cat1
=> result: {{ path.url }} is `/categories`
=> but i want: {{ path.url }} is `/categories/cat1`

任何想法?

谢谢!!

标签: jekyllliquid

解决方案


您正在创建一个页面,并且 URL 是从您的前端永久链接设置的。您可以将此页面转换为布局,然后使用该布局为您想要的每个类别创建页面。

或者,您可以使用这个官方插件,它确实实现了同样的事情:https ://github.com/jekyll/jekyll-archives


推荐阅读