运算符

Liquid 包括许多逻辑和比较运算符。

基础运算符

== 相等
!= 不相等
> 大于
< 小于
>= 大于或等于
<= 小于或等于
or 逻辑或
and 逻辑与

举例来说:


{% if product.title == "Awesome Shoes" %}
  These shoes are awesome!
{% endif %}

您可以在一个标记中使用多个运算符:


{% if product.type == "Shirt" or product.type == "Shoes" %}
  This is a shirt or a pair of shoes.
{% endif %}

包含

contains 用于检查在一个字符串中是否存在某个子串。


{% if product.title contains "Pack" %}
  This product's title contains the word Pack.
{% endif %}

contains 还可以用于检查一个字符串数组中是否存在某个字符串。


{% if product.tags contains "Hello" %}
  This product has been tagged with "Hello".
{% endif %}

contains 只能用于搜索字符串。你不能将其用于从一个对象数组中检查是否存在某个对象。

运算顺序

当一个标记中有多个 andor 运算符时,运算会按照从右到左的顺序执行。您不能使用小括号改变操作顺序。小括号在Liquid中是无效的字符,并且会让您的标签无法工作。


{% if true or false and false %}
  This evaluates to true, since the `and` condition is checked first.
{% endif %}


{% if true and false and false or true %}
  This evaluates to false, since the tags are checked like this:

  true and (false and (false or true))
  true and (false and true)
  true and false
  false
{% endif %}