gpt4 book ai didi

Jekyll 将变量放在逻辑表达式中

转载 作者:行者123 更新时间:2023-12-02 03:35:18 24 4
gpt4 key购买 nike

我正在尝试执行以下操作:

{% for post in site.categories.{{ post.designer }} %}

因此,当将上述代码放在单个帖子中时,它可以显示当前帖子类别中的帖子列表。

但是我认为它不起作用,因为它一直返回未定义。我的问题是,在 Jekyll 或 Liquid 中是否可以将变量放在逻辑表达式中?

谢谢

最佳答案

我想“设计师”是您帖子的类别?
如果是,则无法通过 post.designer 获取。

您需要改用 page.categories(根据 Page variables )。

一篇文章可以有多个类别,所以您不能只将 page.categories 放在循环中,因为它是一个数组。

有两种可能的解决方案:

  1. 遍历帖子的所有类别,然后对每个类别进行循环:

    {% for cat in page.categories %}
    <h1>{{ cat }}</h1>
    <ul>
    {% for post in site.categories[cat] %}
    <li><a href="{{ post.url }}">{{ post.title }}</a></li>
    {% endfor %}
    </ul>
    {% endfor %}
  2. 如果您的帖子只有一个类别,您可以省略我第一个示例中的外循环,而只使用 the first element of the page.categories array :

    <ul>
    {% for post in site.categories[page.categories.first] %}
    <li><a href="{{ post.url }}">{{ post.title }}</a></li>
    {% endfor %}
    </ul>

    {% assign firstcat = page.categories | first %}

    <ul>
    {% for post in site.categories[firstcat] %}
    <li><a href="{{ post.url }}">{{ post.title }}</a></li>
    {% endfor %}
    </ul>

关于Jekyll 将变量放在逻辑表达式中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23851553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com