وحدة:ParameterCount/شرح

من أرابيكا، الموسوعة الحرة
اذهب إلى التنقل اذهب إلى البحث

هذه الوحدة تقوم بحساب عدد المعلمات التي تم تمريرها إلى قالب ما. على سبيل المثال، إذا كنت قد وضعت الكود {{#invoke:ParameterCount|all}} في {{مثال قالب}} وإذا كنت تستخدم قالب: {{مثال قالب}} بالطريقة التالية:

{{مثال قالب
| 1
| 2
| 3
}}

سيكون ناتج {{#invoke:ParameterCount|all}} داخل القالب: 3.

يمكن إعداد هذه الوحدة لحساب جميع المعلمات، أو لحساب معلمات محددة ضمن معايير يحددها مؤلف القالب، هذه الوحدة مفيدة عند استعمالها في نطاق القوالب ولا يفيد استعمالها في نطاقات أخرى.

تحتوي الوحدة على وظيفتان أساسيتان هما all وmain.

all

الوظيفة all يتم استخدام الدالة لحساب جميع المعلمات المحددة عند استخدام قالب، بغض النظر عن إذا كان مستخدمة في القالب نفسه أم لا.

الاستعمال

{{#invoke:ParameterCount|all}}

أمثلة

اذا وضع الكود {{#invoke:ParameterCount|all}} في القالب {{my example template}} وعند استخدام القالب كالتالي: {{my example template|1|2|foo=bar}} سيكون الناتج: 3.

main

الوظيفة main يتم استخدام الدالة لحساب معلمات ذو أسماء محددة، بواسطة طريقتان تستخدم لتحديد المعلمات: إما الاسم، أو بنمط معين.

بالأسم :لتحديد معلمة محددة باسمها.

{{#invoke:ParameterCount|main|1|2|3|abc|def}}


باستخدام نمط

{{#invoke:ParameterCount|main|pattern1=^param%d+$|pattern2=^abc}}

لتحديد معلمة أو أكثر بواسطة نمط لوا (بالإنجليزية: Lua Ustring pattern)‏ أضف المعلمة |pattern1= و |pattern2= إلخ.

للحصول على معلومات حول إنشاء أنماط لوا، طالع الصفحات التالية:

أمثلة

إذا وضع الكود {{#invoke:ParameterCount|main|1|2|abc}} في قالب {{مثال قالب}} وعند استخدام القالب كالتالي: {{مثال قالب|1|2|abc=some value|other=some other value}} سيكون ناتج استخدام الوحدة 3.

إذا وضع الكود {{#invoke:ParameterCount|main|pattern1=^param%d+$}} في قالب {{مثال قالب}} وعند استخدام القالب كالتالي: {{مثال قالب|param1=a value|param2=another value|param5=yet another value}} سيكون ناتج استخدام الوحدة 3.

التحقق من الوسائط الفارغة

{{#invoke:ParameterCount|all|checkblanks=no}}
{{#invoke:ParameterCount|main|checkblanks=no}}

افتراضياً، لا تقوم الوحدة بحساب المعلمات أو الوسائط الفارغة مثال: |abc=   .إذا أردت حساب جميع المعلمات بما فيها الفارغة يجب عليك استخدام المعلمة التالية: |checkblanks=no. وهي تعمل في الوظيفتين all وmain.

أمثلة

عند وضع الكود {{#invoke:ParameterCount|all|checkblanks=no}} في قالب {{مثال قالب}} وعند استخدام الكود التالي: {{مثال قالب|1|2|مثال=ملعب|مثال2=}} سينتج عدد الوسائط المستخدمة: 4.