gpt4 book ai didi

jekyll - 在 Jekyll 中创建自定义的基于页面的循环

转载 作者:行者123 更新时间:2023-12-03 22:48:33 25 4
gpt4 key购买 nike

我想以同样的方式创建另一个基于页面的循环 _posts文件夹适用于博客部分,但适用于杂志的小目录。 (希望这是有道理的)

也许我误解了一些简单的东西,但我就是无法解决。
我有这个循环,感觉它应该可以工作,但没有任何返回。

{% for page in site.pressitems %}
<li>
<a href="{{ post.url }}">{{ page.title }}</a>
</li>
{% endfor %}

代码,链接,解释,任何东西都非常感谢。 :)

最佳答案

您无法将自己的收藏添加到 site就这样。
site只知道三个集合:pages , posts , 和 categories .您可以通过执行 site.<category>.posts 获取某个类别的所有帖子。 . AFAIK,类别仅适用于帖子,不适用于页面。

这是有道理的,因为 Jekyll 应该主要是一个博客引擎,而不是一个通用的静态网站生成器。

因此,您现在最好的解决方案是“向 jekyll 撒谎”。让它相信你有帖子,而实际上你正在制作页面。

_posts/
pressitems/
blog/

您将能够像这样循环 _posts/pressitems 中的元素:
for item in site.categories.pressitems.posts do
... {{ item.title }} ... {{ item.url }}
endfor

同样,您的“真正的博客条目”会这样:
for p in site.categories.blog.posts do
... {{ p.title }} ... {{ p.url }}
endfor

问题是你必须尊重 Jekyll 关于文件名的命名约定;您的新闻稿必须看起来像真实的帖子。这意味着它们必须以 yyyy-mm-dd- 字符串开头,如帖子。给他们一个随机的日期。
_posts/
pressitems/
1901-01-01-the-first-press-item.textile
1902-01-01-the-second-one.textile

编辑:当这篇文章最初写于 2012 年时确实如此,但现在不再如此。 Modern Jekyll 确实允许您创建自己的集合 https://jekyllrb.com/docs/collections/

关于jekyll - 在 Jekyll 中创建自定义的基于页面的循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9110803/

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