gpt4 book ai didi

按标签过滤帖子

转载 作者:行者123 更新时间:2023-12-01 15:53:46 25 4
gpt4 key购买 nike

我有一个新的 Jekyll/Octopress 站点。

我做了一些定制:我将一个 category_list_tag.rb 文件(来自 Dan Watson)添加到插件文件夹以创建类别,然后复制 category_generator.rb 和 category_list_tag.rb 以创建 tag_generator.rb 和 tag_list_tag。 rb.

我现在有多种方法可以将帖子“分组”在一起,在侧边栏中,这一切都很好。

在每个帖子的底部,我现在想显示一个与相关帖子具有相同标签的帖子列表。

我还是个新手,正在学习所有这些,并设法破解了以下内容:

在 YAML Front Matter 中,我有以下内容:

---
title: "Preface"
date: 2012-09-02 18:30
layout: post

categories:
- Section 1

tags:
- Author
- About
- Publisher
---

在包含文件中,我在每篇文章的底部添加了以下内容:

<ul class="inline">
{% for tag in site.tags %}
<li><a href="{{ url_root }}#{{ tag[0] }}-ref">{{ tag[0] }} <span>({{ tag[1].size }})</span></a></li>
{% endfor %}
</ul>

<ul class="posts inline">
{% for tag in site.tags %}
<h5 id="{{ tag[0] }}-ref">{{ tag[0] }}</h5>

{% for post in tag[1] %}
<li><a href="{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></li>
{% endfor %}

{% endfor %}
</ul>

这当然会显示所有标签列出的所有帖子,这很好,但不是我想要的。

我如何重写它,以便只有与我所在的帖子具有相同标签的帖子才会列在帖子末尾?

这真的很困扰我,我似乎无法正确考虑。

更新:通过对上述代码片段进行以下更改,我已经解决了部分问题:

{% for tag in page.tags %}
<h5 id="{{ tag }}-ref">{{ tag }}</h5>
{% for post in site.posts reversed %}
<li><a href="{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></li>
{% endfor %}
{% endfor %}

但是它不太正确...标签标题列出了与每个帖子关联的标签,这是我想要的,但在每个标签标题下,列出了所有帖子,而不仅仅是与该标签关联的那些帖子.. . 嗯。

如果您能指出正确的方向,请提前致谢。

最佳答案

嗯,你可以尝试以下方法:

{% for tag in page.tags %}
<h5 id="{{ tag }}-ref">{{ tag }}</h5>

{% for post in site.posts reversed %}

{% if post.tags contains tag %}
<li><a href="{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></li>
{% endif %}

{% endfor %}

{% endfor %}

它将验证标签是否存在于帖子的标签数组中。如果是,它将打印 <li>...</li>部分。

希望对您有所帮助! :)

关于按标签过滤帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14177520/

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