Skip to Content

Variable Tags

These tags are used to declare, assign, and manipulate variables in Liquid templates. They allow you to store values, perform calculations, and manage data within your templates. Use these tags to handle dynamic data and logic in your templates.

assign

Performs an assignment of one variable to another.

Input

{% assign var = "hello" | upcase %} {{ var }}

Output

HELLO

capture

Captures the string inside of the opening and closing tags and assigns it to a variable. Variables created using capture are stored as strings.

Input

{% capture my_variable %}I am being captured.{% endcapture %} {{ my_variable }}

Output

I am being captured.

Using capture, you can create complex strings using other variables created with assign.

Input

{% assign favorite_food = "pizza" %} {% assign age = 35 %} {% capture about_me %} I am {{ age }} and my favorite food is {{ favorite_food }}. {% endcapture %} {{ about_me }}

Output

I am 35 and my favourite food is pizza.

decrement

Creates and outputs a new number variable with initial value -1. On subsequent calls, it decrements its value by one and outputs the new value.

Input

{% decrement my_counter %} {% decrement my_counter %} {% decrement my_counter %}

Output

-1 -2 -3

Like increment, variables created using decrement are independent from variables created using assign or capture.


increment

Creates and outputs a new number variable with initial value 0. On subsequent calls, it increases its value by one and outputs the new value.

Input

{% increment my_counter %} {% increment my_counter %} {% increment my_counter %}

Output

0 1 2

Variables created using increment are independent from variables created using assign or capture.

In the example below, a variable named “var” is created using assign. The increment tag is then used several times on a variable with the same name. Note that the increment tag does not affect the value of “var” that was created using assign.

Input

{% assign var = 10 %} {% increment var %} {% increment var %} {% increment var %} {{ var }}

Output

0 1 2 10
Last updated on