Classics Classics Classics Shorts Shorts Classics Shorts n77I0F

Liquid has access to many logical and comparison operators. You can use operators to create logic with control flow tags.

Basic operators

Operator Function
== equals
!= does not equal
> Classics Shorts Classics Shorts Classics Shorts Classics greater than
< less than
>= greater than or equal to
<= Classics Shorts Classics Classics Classics Shorts Shorts less than or equal to
Shorts Shorts Shorts Classics Classics Classics Classics or condition A or condition B
and condition A and condition B

For example:

{% if customer.has_account ==Classics Classics Classics Shorts Classics Shorts Shorts true %}
  Welcome back to our store!
{% endif %}

You can do multiple comparisons in a tag using the andwinter Boutique Casual Navy Dress Old AFqAwx6ZSC and or operators:

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

contains

contains checks for the presence of a substring in a string.

Shorts Shorts Classics Classics Classics Shorts Classics {% if customer.email contains "shopify.com" %}
  Hey there, Shopify employee!
{% endif %}

contains can also check for the presence of a string in an array of strings.

Shorts Classics Classics Classics Shorts Shorts Classics {% if product.tags contains "outdoor" %}
  This product is great for using outdoors!
{% endif %}

contains can only search strings. You cannot use it to check for an object in an array of objects.

Classics Shorts Classics Classics Shorts Shorts Classics Order of operations

In tags with more than one and or or operator, operators are checked in order from right to left. You cannot change the order of operations using parentheses — parentheses are invalid characters in Liquid and will prevent your tags from working.

{% if true or false Classics Shorts Shorts Classics Shorts Classics Classics and false %}
  This evaluates to true, since the 'and' condition is checked first.
{% endif %}
{% if true andShorts Shorts Classics Classics Classics Shorts Classics 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 %}

Ready to start selling with Shopify?

Try it free