الفرق بين المراجعتين ل"Liquid/variable"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'== الوسوم Tags ذات النوع المتغير Variable == تنشئ الوسوم المتغيرة متغيرات Liquid جديدة. === assign === ينشئ هذ...')
 
سطر 7: سطر 7:
 
|+
 
|+
 
!الدخل
 
!الدخل
 +
!الخرج
 
|-
 
|-
 
|<syntaxhighlight lang="liquid">
 
|<syntaxhighlight lang="liquid">
سطر 14: سطر 15:
 
{% endif %}
 
{% endif %}
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
+
|<syntaxhighlight lang="liquid">
{| class="wikitable"
+
This statement is valid.
!الخرج
+
</syntaxhighlight>
|-
 
|<code>This statement is valid.</code>
 
 
|}
 
|}
 
غلّف القيمة بعلامة الاقتباس <code>"</code> لحفظها كمتغير من النوع سلسلة نصية string.
 
غلّف القيمة بعلامة الاقتباس <code>"</code> لحفظها كمتغير من النوع سلسلة نصية string.
 
{| class="wikitable"
 
{| class="wikitable"
 
!الدخل
 
!الدخل
 +
!الخرج
 
|-
 
|-
 
|<syntaxhighlight lang="liquid">
 
|<syntaxhighlight lang="liquid">
سطر 28: سطر 28:
 
{{ foo }}
 
{{ foo }}
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
| <code>bar</code>
 
|}
 
|}
{| class="wikitable"
 
!الخرج
 
|-
 
|<code>=</code>
 
 
<code>bar</code>
 
|}
 
 
 
=== capture ===
 
=== capture ===
يلتقط السلسلة النصية الموجودة بين وسوم الفتح والإغلاق ويسندها لمتغير. تُخزَّن المتغيرات المُنشَأة باستخدام الوسم <code>capture</code> كسلاسل نصية.
+
يلتقط هذا الوسم السلسلة النصية الموجودة بين وسوم الفتح والإغلاق ويسندها لمتغير. تُخزَّن المتغيرات المُنشَأة باستخدام الوسم <code>capture</code> كسلاسل نصية.
 
{| class="wikitable"
 
{| class="wikitable"
 
!الدخل
 
!الدخل
 +
!الخرج
 
|-
 
|-
 
|<syntaxhighlight lang="liquid">
 
|<syntaxhighlight lang="liquid">
سطر 46: سطر 40:
 
{{ my_variable }}
 
{{ my_variable }}
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
+
|<syntaxhighlight lang="liquid">
{| class="wikitable"
+
I am being captured.
!الخرج
+
</syntaxhighlight>
|-
 
|<code>I am being captured.</code>
 
 
|}
 
|}
 
يمكنك باستخدام الوسم <code>capture</code> إنشاء سلاسل نصية معقدة عن طريق استخدام متغيرات أخرى منشَأة باستخدام الوسم <code>assign</code>.
 
يمكنك باستخدام الوسم <code>capture</code> إنشاء سلاسل نصية معقدة عن طريق استخدام متغيرات أخرى منشَأة باستخدام الوسم <code>assign</code>.
 
{| class="wikitable"
 
{| class="wikitable"
 
!الدخل
 
!الدخل
 +
!الخرج
 
|-
 
|-
 
|<syntaxhighlight lang="liquid">
 
|<syntaxhighlight lang="liquid">
سطر 65: سطر 58:
  
 
{{ about_me }}
 
{{ about_me }}
 +
</syntaxhighlight>
 +
|<syntaxhighlight lang="liquid">
 +
I am 35 and my favourite food is pizza.
 
</syntaxhighlight>
 
</syntaxhighlight>
 
|}
 
|}
{| class="wikitable"
 
!الخرج
 
|-
 
|<code>I am 35 and my favourite food is pizza.‎</code>
 
|}
 
 
 
=== increment ===
 
=== increment ===
 
ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية <code>0</code>، حيث يزيد في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.
 
ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية <code>0</code>، حيث يزيد في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.
 
{| class="wikitable"
 
{| class="wikitable"
 
!الدخل
 
!الدخل
 +
!الخرج
 
|-
 
|-
 
|<syntaxhighlight lang="liquid">
 
|<syntaxhighlight lang="liquid">
سطر 83: سطر 74:
 
{% increment my_counter %}
 
{% increment my_counter %}
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
+
|<syntaxhighlight lang="liquid">
{| class="wikitable"
+
0
!الخرج
+
1
|-
+
2
|<code>0</code>
+
</syntaxhighlight>
 
 
<code>1</code>
 
 
 
<code>2</code>
 
 
|}
 
|}
 
المتغيرات المُنشَأة باستخدام الوسم <code>increment</code> مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين <code>assign</code> أو <code>capture</code>.
 
المتغيرات المُنشَأة باستخدام الوسم <code>increment</code> مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين <code>assign</code> أو <code>capture</code>.
سطر 98: سطر 85:
 
{| class="wikitable"
 
{| class="wikitable"
 
!الدخل
 
!الدخل
 +
!الخرج
 
|-
 
|-
 
|<syntaxhighlight lang="liquid">
 
|<syntaxhighlight lang="liquid">
سطر 106: سطر 94:
 
{{ var }}
 
{{ var }}
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
+
| <code>0</code>
{| class="wikitable"
 
!الخرج
 
|-
 
|
 
 
 
<code>0</code>
 
  
 
<code>1</code>
 
<code>1</code>
سطر 120: سطر 102:
 
<code>10</code>
 
<code>10</code>
 
|}
 
|}
 
 
=== decrement ===
 
=== decrement ===
 
ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية ‎<code>-1</code>، حيث ينقص في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.
 
ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية ‎<code>-1</code>، حيث ينقص في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.
 
{| class="wikitable"
 
{| class="wikitable"
 
!الدخل
 
!الدخل
 +
!الخرج
 
|-
 
|-
 
|<syntaxhighlight lang="liquid">
 
|<syntaxhighlight lang="liquid">
سطر 131: سطر 113:
 
{% decrement variable %}
 
{% decrement variable %}
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
+
|<syntaxhighlight lang="liquid">
{| class="wikitable"
+
-1
!الخرج
+
-2
|-
+
-3
|<code>‎-1</code>
+
</syntaxhighlight>
 
 
<code>‎-2</code>
 
 
 
<code>‎-3</code>
 
 
|}
 
|}
 
المتغيرات المُصرَّح عنها باستخدام الوسم <code>decrement</code> مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين <code>assign</code> أو <code>capture</code>.
 
المتغيرات المُصرَّح عنها باستخدام الوسم <code>decrement</code> مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين <code>assign</code> أو <code>capture</code>.

مراجعة 16:22، 4 أغسطس 2021

الوسوم 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.

مصادر