Jekyll - 如果博客 post 超过 1 post.tag 则显示一条消息,否则显示标签名称
Jekyll - If there is more then 1 post.tag for a blog post then display a message otherwise display the tag name
在使用Liquid 模板语言的Jekyll 中,我在我的博客页面上显示了最新的6 篇博客post。对于每个 post,我在 link.
中显示 post 日期、姓名、摘录和 post url
我也希望能够显示这个 post 的第一个标签(例如 "Front-end development")。但是,如果有超过 1 个标签与 post 相关联,我想显示一条回退消息说 "View tags",它将带有 link 的下拉列表切换到其他标签。如果我可以 return 一个无序列表,那很好,因为我可以从那里获取它。
这段代码不起作用,但希望它能说明我正在努力实现的目标:
{% for tag in post.tags %}
{% if tag.size > 1 %}
<a class="toggle-tag-list">View tags</a>
<ul class="tag-list hidden">
<li><a href="{{ tag.url }}">tag 1</a></li>
<li><a href="{{ tag.url }}">tag 2</a></li>
<li><a href="{{ tag.url }}">tag 3</a></li>
</ul>
{% else %}
<a href="{{ tag.url }}">{{ tag }}</a>
{% endif %}
{% endfor %}
编辑后的答案:
我看到tag.url
returns什么都没有,很正常。
但是,如果您使用标签页(手动或使用 jekyll-paginate-v2),您已经知道它们的 url。你可以像我在这个编辑中为 href
做的那样假设你的标签页 url 的形式是 /site.basurl/tag/tagname/
.
随时调整代码。
你可以试试这个:
{% if post.tags.size > 0 %}
{% if post.tags.size > 1 %}
<a class="toggle-tag-list">View tags</a>
<ul class="tag-list hidden">
{% for tag in post.tags %}
<li><a href="{{ site.baseurl }}/tag/{{ tag | slugify: "ascii" }}/">{{ tag }}</a></li>
{% endfor %}
</ul>
{% else %}
<a href="{{ site.baseurl }}/tag/{{ post.tags.first | slugify: "ascii" }}/">{{ post.tags.first }}</a>
{% endif %}
{% endif %}
在使用Liquid 模板语言的Jekyll 中,我在我的博客页面上显示了最新的6 篇博客post。对于每个 post,我在 link.
中显示 post 日期、姓名、摘录和 post url我也希望能够显示这个 post 的第一个标签(例如 "Front-end development")。但是,如果有超过 1 个标签与 post 相关联,我想显示一条回退消息说 "View tags",它将带有 link 的下拉列表切换到其他标签。如果我可以 return 一个无序列表,那很好,因为我可以从那里获取它。
这段代码不起作用,但希望它能说明我正在努力实现的目标:
{% for tag in post.tags %}
{% if tag.size > 1 %}
<a class="toggle-tag-list">View tags</a>
<ul class="tag-list hidden">
<li><a href="{{ tag.url }}">tag 1</a></li>
<li><a href="{{ tag.url }}">tag 2</a></li>
<li><a href="{{ tag.url }}">tag 3</a></li>
</ul>
{% else %}
<a href="{{ tag.url }}">{{ tag }}</a>
{% endif %}
{% endfor %}
编辑后的答案:
我看到tag.url
returns什么都没有,很正常。
但是,如果您使用标签页(手动或使用 jekyll-paginate-v2),您已经知道它们的 url。你可以像我在这个编辑中为 href
做的那样假设你的标签页 url 的形式是 /site.basurl/tag/tagname/
.
随时调整代码。
你可以试试这个:
{% if post.tags.size > 0 %}
{% if post.tags.size > 1 %}
<a class="toggle-tag-list">View tags</a>
<ul class="tag-list hidden">
{% for tag in post.tags %}
<li><a href="{{ site.baseurl }}/tag/{{ tag | slugify: "ascii" }}/">{{ tag }}</a></li>
{% endfor %}
</ul>
{% else %}
<a href="{{ site.baseurl }}/tag/{{ post.tags.first | slugify: "ascii" }}/">{{ post.tags.first }}</a>
{% endif %}
{% endif %}