我正在GitHub Pages上使用Jekyll来构建博客,并希望获得传递给YAML前题中Liquid模板的page.title
字符串的长度,该字符串在每个帖子的YAML主题中。我还没有找到一种简单的方法来做到这一点。查看Liquid For Designers Guide,我可以看到它支持两种类型的标记:
{{ }}
分隔,您可以输出传递到模板的变量,这些变量可以在YAML前端,例如Jekyll中的page.title
或_config.yml
中的全局站点级别变量。为了输出帖子或页面的标题,您可以使用{{ page.title }}
。 {% %}
分隔,这些用于模板中的逻辑。如果语句循环,则表示该类型的事物。 显然,您可以在“输出标记”中使用很多过滤器,并且可以使用
{{ page.title | size }}
输出传递到模板的字符串的长度。但是,我想在模板中执行的操作是根据标题的长度使用
<h1>
,<h2>
或<h3>
header 呈现页面标题。无论如何,我无法弄清楚标签标记和输出标记的混合。
我可以使用
page.title
将{{ page.title | size }}
的大小输出到页面上,但是我无法弄清楚如何在if语句中使用长度。这也将返回字符串表示形式,而不是数字。有对Liquid有更多经验的人知道该怎么做吗?
理想情况下,我想做的事情与此类似:
{% if page.title | size > 5 %}
最佳答案
我一直在研究使用液体语法在页脚中建立链接,这非常简单。
{% assign thesize = variable.size %}
{% if thesize > 5 %}
Do stuff here.
{% endif %}
至少在我正在做的事情上起作用,只是以为我会把它扔在那里。我在使用捕获时遇到问题,因为它会自动存储为字符串。
再说一遍
{% if variable.size > 5 %}
Do stuff here.
{% endif %}
应该也一样工作。
关于github - 如何在Jekyll's Liquid模板中比较字符串大小/长度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16762714/