2015-04-28 103 views
1

只有在帖子中有實際標籤時,我纔想渲染「標籤:」標籤。當我寫僅在存在標籤時才渲染標籤標籤

{{post.tags | size}} 

我得到的標籤數量。但是,如果我把它放在{% if %}的條件下:

{% if post.tags | size != '0' %} 

它總是正確的。我解決了這個問題

{% capture tagsize %}{{post.tags | size}}{% endcapture %} 
{% if tagsize != '0' %} 

但它看起來非常難看。有一個更好的方法嗎?

注意:我使用GitHub頁面,所以使用插件 - 除了過度殺傷 - 不是一個選項。我的Jekyll版本爲2.0.4,截止日期爲here

回答

1

默認{{ post.tags }} == empty array

由於我們不能做{% if post.tags != [] %},我們只是在_config.yml中加array: []

我們現在可以這樣做:

{% if post.tags != site.array %} 
    Do something 
{% endif %} 
+0

聽起來有點哈克,但如果有沒有別的辦法... – GergelyPolonkai

0

標籤的尺寸返回一個整數,而不是一個字符串,那麼你應該比較反對0而不是「0」

{% if page.tags.size != 0 %} 
    <!-- some code to render tags --> 
{% endif %}