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