列出杰基尔特定类别中的标签

dir*_*hen 6 liquid jekyll

我正在将我的Wordpress博客迁移到Jekyll,到目前为止我非常喜欢它.新网站中的当前设置如下:

  • 用于category区分两种类型的帖子(例如,博客和投资组合)
  • tag正常使用

现在的挑战是tags在a中显示所有内容,category因为我想为两种类型的帖子创建两个单独的标签云.

据我所知,Liquid支持循环遍历站点中的所有标记,如下所示:

{% for tag in site.tags %}
    {{ tag | first }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

但我想将范围限制在特定类别,我希望这样做:

{% for tag in site['category'].tags %}
    {{ tag | first }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

任何建议将被认真考虑.

Ron*_*Ron 8

这似乎适用于所有类型的过滤器,如类别或其他前端变量 - 如"类型",所以我可以有类型:文章或类型:视频,这似乎只从其中一个得到标签,如果我把它放在'在哪里'部分.

{% assign sorted_tags = site.tags | sort %}
{% for tag in sorted_tags %}
{% assign zz = tag[1] | where: "category", "Photoshop" | sort %}
{% if zz != empty %}

<li><span class="tag">{{ tag[0] }}</span>
<ul>
  {% for p in zz %}
  <li><a href="{{ p.url }}">{{ p.title }}</a></li>
  {% endfor %}
 </ul>
 </li>
 {% endif %}

 {% endfor %}
Run Code Online (Sandbox Code Playgroud)

zz只是用来过滤第一个标签[0]以上的东西,因为它似乎只有标签本身,所以你可以用它过滤其他任何东西.tag [1]包含所有其他内容.

最初我正在使用如果zz!= null或者如果zz!=""但它们都没有工作.