2.4 KiB
title
| title |
|---|
| Operators |
Liquid has access to all of the logical and comparison operators.
Basic Operators
</tr>
<tr>
<td><pre><=</pre></td>
<td>less than or equal to</td>
</tr>
<tr>
<td><pre>or</pre></td>
<td>condition A <strong>or</strong> condition B</td>
</tr>
<tr>
<td><pre>and</pre></td>
<td>condition A <strong>and</strong> condition B</td>
</tr>
</tbody>
== |
equals |
!= |
does not equal |
> |
greater than |
< |
less than |
>= |
greater than or equal to |
Examples:
Operators can be chained together.
Contains operator
contains checks for the presence of a substring inside a string.
{% highlight html %}{% raw %} {% if product.title contains 'Pack' %} This product's title contains the word Pack. {% endif %} {% endraw %}{% endhighlight %}
contains can also check for the presence of a string in an array of strings.
{% highlight html %}{% raw %} {% if product.tags contains 'Hello' %} This product has been tagged with 'Hello'. {% endif %} {% endraw %}{% endhighlight %}
You cannot check for the presence of an object in an array of objects using contains. This will not work:
{% highlight html %}{% raw %} {% if product.collections contains 'Sale' %} One of the collections this product belongs to is the Sale collection. {% endif %} {% endraw %}{% endhighlight %}
This will work:
{% highlight html %}{% raw %} {% assign in_sale_collection = false %} {% for collection in product.collections %} {% if in_sale_collection == false and collection.title == 'Sale' %} {% assign in_sale_collection = true %} {% endif %} {% endfor %} {% if in_sale_collection %} One of the collections this product belongs to is the Sale collection. {% endif %} {% endraw %}{% endhighlight %}