Liquid/variable

من موسوعة حسوب

الوسوم Tags ذات النوع المتغير Variable

تنشئ الوسوم المتغيرة متغيرات Liquid جديدة.

assign

ينشئ هذا الوسم متغيرًا جديدًا له اسم.

الدخل الخرج
{% assign my_variable = false %}
{% if my_variable != true %}
  This statement is valid.
{% endif %}
This statement is valid.

غلّف القيمة بعلامة الاقتباس " لحفظها كمتغير من النوع سلسلة نصية string.

الدخل الخرج
{% assign foo = "bar" %}
{{ foo }}
bar

capture

يلتقط هذا الوسم السلسلة النصية الموجودة بين وسوم الفتح والإغلاق ويسندها لمتغير. تُخزَّن المتغيرات المُنشَأة باستخدام الوسم capture كسلاسل نصية.

الدخل الخرج
{% capture my_variable %}I am being captured.{% endcapture %}
{{ my_variable }}
I am being captured.

يمكنك باستخدام الوسم capture إنشاء سلاسل نصية معقدة عن طريق استخدام متغيرات أخرى منشَأة باستخدام الوسم assign.

الدخل الخرج
{% assign favorite_food = "pizza" %}
{% assign age = 35 %}

{% capture about_me %}
I am {{ age }} and my favorite food is {{ favorite_food }}.
{% endcapture %}

{{ about_me }}
I am 35 and my favourite food is pizza.

increment

ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية 0، حيث يزيد في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.

الدخل الخرج
{% increment my_counter %}
{% increment my_counter %}
{% increment my_counter %}
0
1
2

المتغيرات المُنشَأة باستخدام الوسم increment مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين assign أو capture.

سننشئ في المثال التالي متغيرًا بالاسم "var" باستخدام الوسم assign، ثم سنستخدم الوسم increment مرات متعددة على متغير بالاسم نفسه. لاحظ أن الوسم increment لا يؤثر على قيمة المتغير "var" الذي أُنشِئ باستخدام الوسم assign.

الدخل الخرج
{% assign var = 10 %}
{% increment var %}
{% increment var %}
{% increment var %}
{{ var }}
0

1

2

10

decrement

ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية ‎-1، حيث ينقص في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.

الدخل الخرج
{% decrement variable %}
{% decrement variable %}
{% decrement variable %}
-1
-2
-3

المتغيرات المُصرَّح عنها باستخدام الوسم decrement مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين assign أو capture.

مصادر