Jekyll:检查帖子内容是否为空

问题描述 投票:0回答:2

我在 Jekyll 项目中有一系列帖子,其中有些只有标题,有些有标题和内容。我想针对每种情况对帖子做不同的事情。例如:

{% for post in site.categories.publications %}
    {{ post.title }}
    {% if post.content == "" or post.content == nil or post.content == blank %}
        <p>Nothing here.</p>
    {% else %}
        {{ post.content }}
    {% endif %}
{% endfor %}

但是

if
语句实际上并没有捕获空帖子。我的条件基于此页面,但 3 种可能性都没有捕获空帖子。关于如何处理这些帖子有什么想法吗?

ruby jekyll liquid
2个回答
17
投票

确保前面的内容之后没有任何内容

---
---
NO NEW LINE HERE !!

没有空格,没有换行

有时文本编辑器会在文件末尾添加换行符。 您可以通过以下方式摆脱它:

{% assign content = post.content | strip_newlines %}

然后测试:

{% if content == ""  %}

0
投票

我更喜欢使用

unless
进行测试:

{% assign content = page.content | strip_newlines %}
{% unless content == null or content == "" %}
  {{ content }}
{% endunless %}
© www.soinside.com 2019 - 2024. All rights reserved.