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

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'== الوسوم Tags ذات النوع المتغير Variable == تنشئ الوسوم المتغيرة متغيرات Liquid جديدة. === assign === ينشئ هذ...')
 
 
(مراجعتان متوسطتان بواسطة مستخدمين اثنين آخرين غير معروضتين)
سطر 1: سطر 1:
== الوسوم Tags ذات النوع المتغير Variable ==
+
<noinclude>{{DISPLAYTITLE:وسوم المتغيرات في Liquid}}</noinclude>
تنشئ الوسوم المتغيرة متغيرات Liquid جديدة.
+
تنشئ الوسوم الخاصة بالمتغيرات متغيرات Liquid جديدة.
  
=== assign ===
+
==<code>assign</code>==
ينشئ هذا الوسم متغيرًا جديدًا له اسم.
+
 
{| class="wikitable"
+
ينشئ هذا الوسم متغيرًا جديدًا له اسم.<syntaxhighlight lang="liquid">
|+
 
!الدخل
 
|-
 
|<syntaxhighlight lang="liquid">
 
 
{% assign my_variable = false %}
 
{% assign my_variable = false %}
 
{% if my_variable != true %}
 
{% if my_variable != true %}
 
   This statement is valid.
 
   This statement is valid.
 
{% endif %}
 
{% endif %}
</syntaxhighlight>
+
</syntaxhighlight>الخرج:<syntaxhighlight lang="liquid">
|}
+
This statement is valid.
{| class="wikitable"
+
</syntaxhighlight>غلّف القيمة بعلامة الاقتباس <code>"</code> لحفظها كمتغير من النوع سلسلة نصية string.<syntaxhighlight lang="liquid">
!الخرج
 
|-
 
|<code>This statement is valid.</code>
 
|}
 
غلّف القيمة بعلامة الاقتباس <code>"</code> لحفظها كمتغير من النوع سلسلة نصية string.
 
{| class="wikitable"
 
!الدخل
 
|-
 
|<syntaxhighlight lang="liquid">
 
 
{% assign foo = "bar" %}
 
{% assign foo = "bar" %}
 
{{ foo }}
 
{{ foo }}
 +
</syntaxhighlight>الخرج:<syntaxhighlight lang="liquid">
 +
bar
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
+
== <code>capture</code> ==
{| class="wikitable"
+
يلتقط هذا الوسم السلسلة النصية الموجودة بين وسوم الفتح والإغلاق ويسندها لمتغير. تُخزَّن المتغيرات المُنشَأة باستخدام الوسم <code>capture</code> كسلاسل نصية.<syntaxhighlight lang="liquid">
!الخرج
 
|-
 
|<code>=</code>  
 
 
 
<code>bar</code>
 
|}
 
 
 
=== capture ===
 
يلتقط السلسلة النصية الموجودة بين وسوم الفتح والإغلاق ويسندها لمتغير. تُخزَّن المتغيرات المُنشَأة باستخدام الوسم <code>capture</code> كسلاسل نصية.
 
{| class="wikitable"
 
!الدخل
 
|-
 
|<syntaxhighlight lang="liquid">
 
 
{% capture my_variable %}I am being captured.{% endcapture %}
 
{% capture my_variable %}I am being captured.{% endcapture %}
 
{{ my_variable }}
 
{{ my_variable }}
</syntaxhighlight>
+
</syntaxhighlight>الخرج:<syntaxhighlight lang="liquid">
|}
+
I am being captured.
{| class="wikitable"
+
</syntaxhighlight>يمكنك باستخدام الوسم <code>capture</code> إنشاء سلاسل نصية معقدة عن طريق استخدام متغيرات أخرى منشَأة باستخدام الوسم <code>assign</code>.<syntaxhighlight lang="liquid">
!الخرج
 
|-
 
|<code>I am being captured.</code>
 
|}
 
يمكنك باستخدام الوسم <code>capture</code> إنشاء سلاسل نصية معقدة عن طريق استخدام متغيرات أخرى منشَأة باستخدام الوسم <code>assign</code>.
 
{| class="wikitable"
 
!الدخل
 
|-
 
|<syntaxhighlight lang="liquid">
 
 
{% assign favorite_food = "pizza" %}
 
{% assign favorite_food = "pizza" %}
 
{% assign age = 35 %}
 
{% assign age = 35 %}
سطر 65: سطر 32:
  
 
{{ about_me }}
 
{{ about_me }}
 +
</syntaxhighlight>الخرج:<syntaxhighlight lang="liquid">
 +
I am 35 and my favourite food is pizza.
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
+
== <code>increment</code> ==
{| class="wikitable"
+
ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية <code>0</code>، حيث يزيد في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.<syntaxhighlight lang="liquid">
!الخرج
 
|-
 
|<code>I am 35 and my favourite food is pizza.‎</code>
 
|}
 
 
 
=== increment ===
 
ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية <code>0</code>، حيث يزيد في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.
 
{| class="wikitable"
 
!الدخل
 
|-
 
|<syntaxhighlight lang="liquid">
 
 
{% increment my_counter %}
 
{% increment my_counter %}
 
{% increment my_counter %}
 
{% increment my_counter %}
 
{% increment my_counter %}
 
{% increment my_counter %}
</syntaxhighlight>
+
</syntaxhighlight>الخرج:<syntaxhighlight lang="liquid">
|}
+
0
{| class="wikitable"
+
1
!الخرج
+
2
|-
+
</syntaxhighlight>المتغيرات المُنشَأة باستخدام الوسم <code>increment</code> مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين <code>assign</code> أو <code>capture</code>.
|<code>0</code>
 
 
 
<code>1</code>
 
 
 
<code>2</code>
 
|}
 
المتغيرات المُنشَأة باستخدام الوسم <code>increment</code> مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين <code>assign</code> أو <code>capture</code>.
 
  
سننشئ في المثال التالي متغيرًا بالاسم "var" باستخدام الوسم <code>assign</code>، ثم سنستخدم الوسم <code>increment</code> مرات متعددة على متغير بالاسم نفسه. لاحظ أن الوسم <code>increment</code> لا يؤثر على قيمة المتغير "var" الذي أُنشِئ باستخدام الوسم <code>assign</code>.
+
سننشئ في المثال التالي متغيرًا بالاسم "var" باستخدام الوسم <code>assign</code>، ثم سنستخدم الوسم <code>increment</code> مرات متعددة على متغير بالاسم نفسه. لاحظ أن الوسم <code>increment</code> لا يؤثر على قيمة المتغير "var" الذي أُنشِئ باستخدام الوسم <code>assign</code>.<syntaxhighlight lang="liquid">
{| class="wikitable"
 
!الدخل
 
|-
 
|<syntaxhighlight lang="liquid">
 
 
{% assign var = 10 %}
 
{% assign var = 10 %}
 
{% increment var %}
 
{% increment var %}
سطر 105: سطر 52:
 
{% increment var %}
 
{% increment var %}
 
{{ var }}
 
{{ var }}
 +
</syntaxhighlight>الخرج:<syntaxhighlight lang="liquid">
 +
0
 +
1
 +
2
 +
10
 
</syntaxhighlight>
 
</syntaxhighlight>
|}
 
{| class="wikitable"
 
!الخرج
 
|-
 
|
 
 
<code>0</code>
 
 
<code>1</code>
 
 
<code>2</code>
 
 
<code>10</code>
 
|}
 
  
=== decrement ===
+
== <code>decrement</code> ==
ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية ‎<code>-1</code>، حيث ينقص في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.
+
ينشئ ويخرج متغيرًا عدديًا جديدًا بقيمة أولية ‎<code>-1</code>، حيث ينقص في الاستدعاءات اللاحقة من قيمته بمقدار واحد ويعطي القيمة الجديدة.<syntaxhighlight lang="liquid">
{| class="wikitable"
 
!الدخل
 
|-
 
|<syntaxhighlight lang="liquid">
 
 
{% decrement variable %}
 
{% decrement variable %}
 
{% decrement variable %}
 
{% decrement variable %}
 
{% decrement variable %}
 
{% decrement variable %}
</syntaxhighlight>
+
</syntaxhighlight>الخرج:<syntaxhighlight lang="liquid">
|}
+
-1
{| class="wikitable"
+
-2
!الخرج
+
-3
|-
+
</syntaxhighlight>المتغيرات المُصرَّح عنها باستخدام الوسم <code>decrement</code> مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين <code>assign</code> أو <code>capture</code>.
|<code>‎-1</code>
 
 
 
<code>‎-2</code>
 
 
 
<code>‎-3</code>
 
|}
 
المتغيرات المُصرَّح عنها باستخدام الوسم <code>decrement</code> مستقلةٌ عن المتغيرات المُنشَأة باستخدام الوسمين <code>assign</code> أو <code>capture</code>.
 
  
 
== مصادر ==
 
== مصادر ==
  
 
* [https://shopify.github.io/liquid/tags/variable/ صفحة Variable في توثيق Liquid الرسمي.]
 
* [https://shopify.github.io/liquid/tags/variable/ صفحة Variable في توثيق Liquid الرسمي.]
 +
[[تصنيف:Liquid]]

المراجعة الحالية بتاريخ 08:31، 6 أغسطس 2021

تنشئ الوسوم الخاصة بالمتغيرات متغيرات 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.

مصادر