Jump to content

قالب:امتداد

متتبع الأخطاء: [[phab:tag/{{{phabricator}}}/|#{{{phabricator}}}]]
From mediawiki.org
This page is a translated version of the page Template:Extension and the translation is 100% complete.
توثيق القالب

يجب إضافة هذا القالب إلى كافة صفحات الامتداد على موقع الويكي هذا (فقط في الصفحة الرئيسية). سوف يضيف صناديق معلومات مفيدة (طالع التالي) وسوف يضيف الامتداد تلقائيا إلى تصنيف:كل الامتدادات ، بالإضافة إلى تصنيفات الحالة ونوع التنفيذ الملائمين. It autofills some fields of the infobox with extension data collected by wikitech:Tool:Extjsonuploader.

الاستخدام

نسخ ولصق:

{{Extension |templatemode =
|name                 = 
|status               = 
|type1                = 
|type2                = 
|hook1                = 
|hook2                = 
|newhook1             = 
|newhook2             = 
|username             = 
|author               = 
|description          = 
|image                = 
|imagesize            = 
|version              = 
|update               = 
|version preview      = 
|update preview       = 
|compatibility policy =
|mediawiki            = 
|php                  = 
|needs-updatephp      = 
|composer             =
|virtual domain       =
|table1               = 
|table2               = 
|license              = 
|download             = 
|repo                 =
|readme               = 
|changelog            = 
|help                 = 
|example              = 
|namespace            = 
|parameters           = 
|tags                 = 
|rights               = 
|compatibility        = 
|phabricator          =
|translate            = 
|vagrant-role         = 
}}
للمساعدة في قيم المتغيرات، طالع ما يلي.
الدليل المرجعي لامتدادات ميدياويكي
{{{name}}}
حالة الإصدار غير معلوم
تنفيذ {{{type1}}}, {{{type2}}}
بيان {{{description}}}
المؤلف/المؤلفون SomeAuthor (SomeUserنقاش)
آخر إصدار {{{version}}} ({{{update}}})
آخر إصدار مراجعة {{{version preview}}} ({{{update preview}}})
سياسة التوافق غير ساري
MediaWiki {{{mediawiki}}}
PHP {{{php}}}
تغييرات قاعدة البيانات {{{needs-updatephp}}}
Composer {{{composer}}}
نطاق افتراضي {{{virtual domain}}}
جداول [[Special:MyLanguage/Template:Extension/{{{table1}}} table|{{{table1}}}]][[:Template:Extension/{{{table1}}} table| ]]
[[Special:MyLanguage/Template:Extension/{{{table2}}} table|{{{table2}}}]][[:Template:Extension/{{{table2}}} table| ]]
ترخيص {{{license}}}
التنزيل {{{download}}}
{{{readme}}}
{{{changelog}}}
المساعدة {{{help}}}
مثال {{{example}}}
{{{namespace}}}
{{{parameters}}}
{{{tags}}}

{{{rights}}}

{{{compatibility}}}
[[translatewiki:Special:Translate/{{{translate}}}|ترجم الامتداد Extension]]
دور فاغرانت {{{vagrant-role}}}
المسائل [[phab:tag/{{{phabricator}}}|المهام المفتوحة]] · الإبلاغ عن عطل تقني

متغيرات المحتوى

يقدم هذا القسم وصفا للمتغيرات التي تنظم محتوى صناديق المعلومات. للمساعدة في templatemode ومتغيرات الضبط الأخرى، يرجى مطالعة متغيرات الضبط.

متغيرات المحتوى
المتغير بيان
nameاسم الامتداد
status

حالة الإصدار الحالية أي مما يلي:

  • unstable - معطوب - لا تستخدم هذا الامتداد
  • experimental - مراحل أولية من التطوير البرمجي، ربما يتغير كثيرا
  • beta - مستقر إلا أنه لم يجرب بالكامل
  • stable - إصدار مستقر
  • unmaintained - لا يتمتع بصيانة - ذكر سابقا أنه مستقر، إلا أنه لا يتمتع بصيانة حاليا
  • unknown - افتراضي

لو كانت الحالة خلاف ما ذكر سالفا، سوف يتم تجاهلها وستعرض القيمة الافتراضية "Unkonwn" في القالب بدلا من الحالة المذكورة. في الحالات التي تمحى فيها القيمة، سوف يصنف الامتداد على أنه غير معلوم (unknown). في الحالات التي تكون فيها القيمة غير صالحة، سوف يضاف الامتداد في تصنيف خاص حتى يمكن التعرف على الخطأ وتصويبه.

type1
type2
type3
type4
type5
type6
نوع التنفيذ

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

القيم المسموح بها لكل من المتغيرات type1 و type2 وغيرها كما يلي:

  • parser - متغير عام لكافة امتدادات المعرب اللغوي غير المصنفة. لو كنت كتبت امتداد معرب لغوي، يرجى استخدام واحد مما يلي من الأنواع المحددة:
  • access - متغير عام لأغراض User access extensions وهي الامتدادات التي تستحدث أو تتحقق من أو تمنح تصاريح أو تسحبها أو تراقب نشاط المستخدمين. لو كتبت امتداد وصول، يرجى استخدام واحد مما يلي من الأنواع المحددة:
    • user activity - امتدادات تراقب نشاط المستخدم (حالات تسجيل الدخول والخروج وإنشاء مستخدم جديد وخلافه)
    • user identity - امتدادات تنشئ مستخدمين وتمحو المستخدمين و/أو تتحقق من هوية أي مستخدم
    • user rights - امتدادات لنظام إدارة الحقوق أي التغييرات التي تطرأ على سبيل تخصيص الحقوق وواجهات برمجة التطبيقات وأدوات الصيانة (لا تشمل الامتدادات التي تذكر فقط الحقوق المطلوبة لاستخدام ميزات هذا الامتداد؛ استخدم لهذا الغرض متغير الحقوق)
  • interface - متغير عام لكافة امتدادات واجهة المستخدم غير المصنفة.
    • media - امتدادات تسمح بتضمين محتوى وسائط متعددة على صفحات الويكي عن طريق تسجيل امتداد ملف مستخدما $wgMediaHandlers .
    • mywiki - امتدادات تقدم بنية تحتية يمكن للمستخدمين منها تخصيص خبرة ميدياويكي الخاصة بهم و/أو المساعدة في إدارة تلك البنية
    • notify - امتدادات ترسل رسائل بريد إلكتروني إلى المستخدمين وكذا رسائل نشرات وكذا تقديم أنواع أخرى من الإشعار للمجتمع
    • page action - امتدادات تحسن من تصرفات الصفحات أو تعدلها. يشمل ذلك أي شيء ينفذ تصرف يتولى قراءة صفحة أو كتابتها أو البحث عنها أو ينشئها أو يغير اسمها أو يحذفها أو يعيد التوجيه إليها أو يناقشها. لا يشمل ذلك حقوق (استخدم user rights) أو سجلات (استخدم user activity).
    • search - امتدادات تبحث في صفحات وتختارها نيابة عن المستخدمين.
    • skin - امتدادات تضيف css أو جافا سكريبت أو تنفذ وظائف وصل تغير هيئة ميدياويكي وطريقة استخدامه باستخدام هيكل السمات.
    • ajax - امتدادات تستخدم أساليب برمجة أجاكس.
    • special - امتدادات تقع في فئة فرعية من فئة SpecialPage، أو تستخدم واحد من وصلاتها أو تربط وظيفة واحدة أو أكثر في SpecialPage.php. طالع Special pages لمزيد من المعلومات.
  • other
    • api - امتدادات تضيف وحدة واجهة برمجة تطبيقات جديدة أو توسع من نموذج أساسي لواجهة برمجة التطبيقات قائم.
    • hook - امتداد للوصلات - يحدد وصلة جديدة - طالع hook1 وخلافه تاليا لو كنت ترغب في تحديد الوصلات التي يستخدمها بالفعل امتدادك.
    • database - يضيف جداول و/أو حقول إلى قاعدة البيانات التي تساند تنصيب ميدياويكي
    • data extraction - استخلاص البيانات
    • filerepo - امتداد يضيف مستودع أنواع ملفات جديد إلى النهاية الخلفية للملفات
    • example - ليس امتدادا فعليا، بل مثال على كيفية كتابة كود امتداد
    • beta features - امتدادات هي من فئة المزايا التجريبية الجديدة.
    • php - امتدادات مستخدمة في لغة البرمجة PHP الضمنية.
    • locale - امتدادات مقترنة بأعمال الأقلمة

أي قيمة أخرى لمتغير 'type' ستكون غير صالحة وينتج عنها وضع الامتداد في تصنيف Category:Extensions with invalid or missing type/ar.

ملحوظة: تشتمل عدة امتدادات أكثر من نوع واحد، لو كان ذلك ينطبق على امتداداك، ضع محل |type= قيمة |type1=|type2=|type3=.... يمكنك تحديد عدد يصل إلى ستة أنواع لامتداد واحد.
hook1
hook2
hook3
hook4
...
اسم كل رابط يستخدمه الامتداد

إن إدخال القيم في هذا الحقل هو سبيل جيد للفت النظر إلى امتدادك ومساعدة المطورين الآخرين. سوف يضيف كل رابط موثق تلقائيا الامتداد إلى تصنيف يذكر الامتدادات التي تسعين بهذا الرابط. يربط هذا التصنيف تلقائيا بكل صفحة رابط حتى يتسنى للمبرمجين الوصول إلى أمثلة على امتدادات تستخدم رابط محدد.

لأغراض الروابط المتعددة، حدد الرابط الأول في hook1 والرابط الثاني في hook2 وهكذا دواليك.
newhook1
newhook2
newhook3
newhook4
...
newhook90

اسم كل رابط يقدمه الامتداد

ربما قد ترغب أيضا في إضافة روابط إلى Extension hook registry.

usernameاسم مستخدم المؤلف على موقع MediaWiki.org (لو كان للمستخدم حساب). يمكن محوه، إلا أنه في حالة وجوده سوف يستخدم في الوصل إلى صفحة مستخدم المؤلف وصفحة نقاشه. يجب أن يكون ذلك دون نطاق الاسم ودون [[]].
authorاسم مؤلف الامتداد لو كان مختلفا عن اسم المستخدم الموجود على MediaWiki.org. نص حر. لو محي ستستخدم خانة 'username' (لو كانت له قيمة مقدمة).
descriptionبيان مختصر
imageلقطة من الشاشة أو شعار الامتداد. يجب أن يكون ذلك دون نطاق الاسم ودون [[]].
imagesizeاختياري، حجم الصورة دون إضافة عدد البيكسلات مثل 360 (الحجم الافتراضي هو 300 بيكسل)
versionآخر إصدار
updateتاريخ آخر تحديث
version previewنسخة الاستعراض
update previewتاريخ آخر تحديث لنسخة الاستعراض
compatibility policyسياسة التوافق (القيم المقبولة: master, main, rel, ltsrel). (متبقيات )
mediawikiالإصدار المطلوب من ميدياويكي أغلب الامتدادات لا يجب أن تستخدم هذا – القيمة الافتراضية هي نعت 'requires' في extension.json. طالع أيضا Category:Extensions without MediaWiki version و Category:Extensions with manual MediaWiki version .
phpالإصدار المطلوب من PHP
needs-updatephp

yes تشير إلى أن الامتداد يتطلب تغيير مخطط جدول قاعدة بيانات أو تصرف مشابه لذلك، قبل تشغيل ميدياويكي. هذا الأمر يعد شرك شائع: سوف تتعرض برمجيات ميدياويكي لديك لعطل لو نسيت تشغيل update.php حينما يتطلب الامتداد تشغيل ذلك.

تشير no إلى أن الامتداد لا يتطلب تشغيل update.php. لتلافي الشك يجب أن يضبط هذا المتغير صراحة بدلا من الاتكال على أن عدم وجود متغير yes سيعني no.

تصمم الامتدادات التي تتماشى ومعايير امتدادات ميدياويكي القياسية مع نص برمجي لتغيير المخطط الذي يتعين عليك أن تبدأ تشغيله يدويا (مرة واحدة) قبل تشغيل ميدياويكي والوصول إليها مستخدما متصفحك، وكذا بعد نسخك لكافة ملفات الامتداد إلى $IP/extensions/ExtensionName وإدراج wfLoadExtension( "ExtensionName" ); في «LocalSettings.php»، شغل التالي من سطر الأوامر:

cd ‎path/to/wiki_install_directory cd maintenance php update.php

$IP تعني مسار التنصيب (أو "مجلد التنصيب") الذي نصبت فيه برمجيات ميدياويكي لديك، وهو ذات المجلد الذي يحتوي على LocalSettings.php وindex.php وخلافه.
composerاسم حزمة الامتداد في Composer، في صيغته القياسية. سوف يضم آليًا لو حدد ذلك في ملف «composer.json» في الامتداد (أي أن هذا المتغير غير مطلوب في مثل هذه الحالة). سوف يربط شبكيًا إلى صفحة الامتداد على Packagist.
virtual domainنطاق قاعدة البيانات الافتراضي الذي يستخدمه الامتداد.
table1
table2
table3
table4
...
table30
اسم كل جدول غير أساسي يستخدمه الامتداد وصلات شبكية إلى صفحة فرعية ملحقة بصفحة امتدادك. على سبيل المثال، إدراج "table1 = cu_changes" في خانة Extension:CheckUser سوف يقدم وصلة شبكية إلى Extension:CheckUser/cu_changes table . لا تدرج الجداول الأساسية مثل page أو revision بل عليك أن تدرج فقط الجداول التي تضيفها الامتدادات.
licenseالترخيص المنظم لاستخدام هذا الامتداد، باستخدام أحد الأكواد المبينة في https://spdx.org/licenses/ على سبيل المثال GPL-2.0-or-later أو GPL-2.0-only أو GPL-3.0-or-later أو خلافه.
downloadوصلة شبكية للتنزيل : Git، {{WikimediaDownload/ar }}.
repoاسم مستودع غيريت الذي يخزن فيه كود الامتداد البرمجي، لو كان مختلفا عن اسم الصفحة. ضبط هذه القيمة تلقائيا يضبط |download= ويسمح للقالب أن يحمل بيانات آليا من ملف extension.json المناسب.
readmeوصلة شبكية خارجية إلى ملف readme مثل https://phabricator.wikimedia.org/r/browse/mediawiki/extensions/Flow;master;README
changelogوصلة شبكية خارجية إلى ملف سجل التغييرات مثل Extension:GeoGebra/Changelog
helpوصلة شبكية إلى مساعدة المستخدم لهذا الامتداد. If not provided, will look for Help:Extension:ExtensionName. لو كانت موجودة، يجب وجود نص ويكي كامل وهو الوصلة الشبكية (لأنك ربما ترغب في الوصل إلى صفحة خارجية على سبيل المثال).
exampleمثال أو موقع شبكي أو لقطة من الشاشة للامتداد أثناء تأدية عمله
namespaceنطاق الاسم الذي يستخدم فيه هذا الامتداد
parametersالمتغيرات المتاحة لملف LocalSettings.php
tagsأية وسوم يستعين بها امتدادك (مثل <tag1>, <tag2>)
rightsحقوق يسبغها الامتداد. لا تخلط بين هذا وترخيص الامتداد ذاته! هي حقوق مثل makebot أو desysop ، لا قيم مثل GFDL أو LGPL أو GPL – هذه هي أنواع تراخيص!
compatibilityمعلومات إضافية عن التوافق، على سبيل المثال مخططات التوافق. نحثك على إضافة أي معلومات توافق خاصة بالبرمجيات العميلة هنا أيضا، خاصة حينما تختلف عن ما هو متوقع من ناحية الدعم الكامل لمتصفح ما.
bugzillaاسم مكون امتداد بغزيلا ميدياويكي
phabricatorاسم مشروع فابريكاتور
translate

متغيرات اختيارية للوصل الشبكي مع الصفحة المحددة حيث (معرف مجموعة الرسائل التي) سوف يكون الامتداد قابل للترجمة باستخدامها على translatewiki.net لو كانت الترجمة مسموحة. لو كانت الوصلة الشبكية غير صحيحة، يرجى ضبطها يدويا لتكون أي مما يلي:

  • ext-LOWERCASE(NOSPACES(الوسم حسب ما هو معرف في config))، aka
  • المتغير الذي تحصل عليه في محدد موقع الموارد الموحد بعد
    • إدخال اسم الامتداد في خانة البحث/الترشيح على translatewiki:Special:Translate أو
    • البحث عن اسمه في languagestats بعد النقر على «توسيع الكل – expand all».
vagrant-roleدور MediaWiki-Vagrant
CheckUsageNameOverrideتخطي اسم الصفحة المستخدم في الوصلة الشبكية لأغراض التحقق من الاستخدام.

متغيرات الضبط

متغيرات الضبط
المتغير بيان
templatemode

التحكم في التصنيف الآلي للصفحة المضيفة.

يترك عادة خاليا. القيم البديلة لذلك كما يلي:

  • nocats - يوقف كلا من أعمال التصنيف ووصلة 'check usage' الشبكية. استخدم هذه القيمة لو كنت تضيف هذا القالب إلى صفحات فرعية لامتداد أو صفحة توثيق لكيفية عمل الامتداد. على سبيل المثال تضبط صورة الاستخدام السالفة تحدد templatemode=nocats لأنها ليست صفحة امتداد فعلية ولا نرغب في إضافة هذه الصفحة إلى أية تصنيفات بسبب ذلك.
  • nousage - يوقف وصلة 'check usage' الشبكية. توقف أيضا الوصلات الشبكية لو كانت الصفحة هي صفحة فرعية أي ليست في نطاق الاسم Extension: أو كانت موقوفة بسبب 'templatemode=nocats'
لو تركت القيمة فارغة، سوف يضيف القالب صفحة الاستضافة إلى Category:All extensions/ar وإلى تصنيف إضافي واحد أو أكثر، استنادا إلى القيم المخصصة لمتغيرات المحتوى.

استخدام صندوق المعلومات

صفحات الامتداد القائمة

لو كنت ترغب في إضافة صندوق المعلومات إلى صفحة قائمة، انسخ النص المصدري والصقه في الجزء الأعلى من هذه الصفحة.

إنشاء صفحة امتداد جديد

لو كنت ترغب في إنشاء صفحة امتداد جديد، أدخل الاسم تاليا واضغط على الزر. سوف تضاف صفحة جديدة تحتوي على قالب صندوق المعلومات في المكان المطلوب.


على المطور الذي يشارك كوده على مستودع كود ميدياويكي أن يتوقع ما يلي:

آراء وملاحظات / نقد / مراجعة للكود
مراجعة وتعليق مطورين آخرين على أمور مثل استخدام البنية والأمن والكفاءة وسهولة الاستخدام.
تحسينات من مطورين
مطورين آخرين يعدلون ما قدمته بغرض تحسين أو تنظيف كودك كي يتماشى وتصنيفات البنية الجديدة وطرقها وكذا أعراف كتابة الكود والترجمات.
تحسين الوصول لإداري نظام مواقع الويكي
لو قررت وضع كودك على موقع ويكي، ربما يقرر مطور آخر نقله إلى مستودع كود ميدياويكي لتيسير أعمال الصيانة. يحق لك حينها إنشاء حساب مطور برمجيات كي تواصل صيانته.
إصدارات قادمة من مطورين آخرين
أفرع جديدة من كودك تستحدث تلقائيا مع إصدار إصدارات جديدة من برمجيات ميدياويكي. يتعين عليك الربط مع هذه الأفرع لو كنت ترغب في دعم إصدارات سابقة.
دمج كودك في امتدادات أخرى ذات أغراض مطابقة أو مشابهة - دمج أفضل السمات من كل امتداد.
التقدير
سوف يحفظ نسب وتقدير عملك في الإصدارات القادمة - يشمل ذلك أية امتدادات مدمجة.
يتعين عليك أنت أيضا أن تشكر وتقدر مطوري أية امتدادات اقتبست منها - خاصة حينما تنفذ عملية دمج.

لا يجب على أي مطور لا يشعر بالراحة تجاه أي من هذه التصرفات استضافة أي شيء في مستودع الكود. نحثك رغم ذلك على استحداث صفحة موجز لامتدادك على موقع الويكي وإبلاغ الأفراد بالامتداد وأين يمكنهم تنزيله.

تحسين مستوى هذا القالب

لو كنت ترغب في تحسين مستوى هذا القالب، شكرا! هذا القالب قالب معقد لذا إليك بعض المساعدة في الطريق:

زر إنشاء امتداد

كي تحسن من سلوك زر إنشاء امتداد:

  • Template:Extension/Sample : النص المعياري للامتداد الذي يحمل مسبقا إلى الصفحات المنشأة حديثا.
  • قالب:امتداد/CreateExtensionInputBox : صندوق إدخال يمكن إضافته إلى أي مكان ترغب في أن يسهل على المستخدمين إنشاء امتدادات فيه. كي تطلع على توثيق وسم ‎<inputbox> يرجى الذهاب إلى Extension:InputBox .

متغيرات صندوق المعلومات

بوجه عام:

  • كي نيسر استخدام هذا القالب، يوصل شبكيا كل بند في صندوق المعلومات بصفحة توثيق من متغيرات القالب الذي تعرضه. لو أضفت متغير ما، يرجى التأكد من إضافته أيضا إلى توثيق متغيرات المحتوى وكذا وصل بنده شبكيا إلى مستند التوثيق المعني بذلك.

إن أردت التغيير/التصويب/الإضافة إلى متغيرات نوع التطبيق:

كي تغير سلوك متغيرات الربط الشبكي:

حالة اختبار

تحقق كي ترى أن الصفحات التالية لا زالت صالحة، بعد تعديل هذا القالب.

TemplateData

TemplateData
[عرض · نقاش · تعديل]

This is the TemplateData documentation for this template used by VisualEditor and other tools.

Extension

An infobox for a MediaWiki extension.

Template parameters[Edit template data]

ParameterDescriptionTypeStatus
Namename

Name of the extension

Default
Current page name
Example
BlueSpice
Stringsuggested
Statusstatus

Current release status. One of: unstable, experimental, beta, stable, unmaintained, unknown.

Suggested values
experimental beta stable unmaintained unknown unstable
Default
unknown
Example
stable
Stringsuggested
Licenselicense

Extension's license.

Example
GPL-3.0
Stringsuggested
Modetemplatemode

Controls auto-categorization of host page. Normally left blank. Alternate values are: nocats, nousage.

Unknownoptional
Screenshot or logoimage

Screenshot or logo of extension. It should be provided without namespace and without [[]]s.

Example
BlueSpice _Logo_v2020.png
Filesuggested
Image sizeimagesize

Optional size of the image in pixels (without unit)

Default
300
Example
180
Numberoptional
Typetype

Implementation type. If more that one type is required leave empty and use "Primary type", "Secondary type", ... instead

Stringsuggested
Primary typetype1

Implementation type. See detailed doc.

Example
mywiki
Stringoptional
Secondary typetype2

Implementation type. See detailed doc.

Example
notify
Stringoptional
Third typetype3

Implementation type. See detailed doc.

Example
page action
Stringoptional
Fourth typetype4

Implementation type. See detailed doc.

Example
skin
Stringoptional
Fifth typetype5

Implementation type. See detailed doc.

Example
ajax
Stringoptional
Sixth typetype6

Implementation type. See detailed doc.

Stringoptional
Descriptiondescription

Short description

Stringsuggested
Authorauthor

The extension author's name, if different from their MediaWiki.org username. Free text, URL. If omitted then the 'username' field will be used (if present).

Stringsuggested
Usernameusername

The author's username on MediaWiki.org (if they have one). May be omitted, but if present it will be used to link to the author's user & user_talk page. It should be provided without namespace and without [[]]s.

Stringoptional
Maintainermaintainer

Username or other information about who maintains this extension.

Stringoptional
Latest versionlatest release version version latest_release_version

version of the last release

Example
4.4.2
Stringsuggested
Latest version release datelatest release date update latest_release_date

date of the last release

Example
2024/03/18
Stringsuggested
Latest preview versionlatest preview version version preview latest_preview_version version_preview

version of the last preview

Stringoptional
Latest preview version update datelatest preview date update preview latest_preview_date update_preview

date of the last preview

Example
ltsrel
Stringoptional
Compatibility policycompatibility policy

For older versions of MediaWiki, should one use the extension's master branch or the REL1_XX branch corresponding to the MediaWiki version? Allowed values: master, rel, ltsrel

Suggested values
master rel ltsrel
Example
1.39.x only
Stringsuggested
MediaWiki versionmediawiki

Required versions of MediaWiki. Not needed if this information is in extension.json.

Example
>= 1.35
Stringdeprecated
PHP versionphp

Required version of PHP

Example
8.0.x
Stringoptional
Needs update.phpneeds-updatephp

"Yes" : indicates that the extension requires a database table schema change or a similar action, before the MediaWiki can run. It is a common pitfall: your MediaWiki will stall, if you forgot to run update.php - if the extension requires it. "No" : should be set as a value since this assures that the extension does not need update.php to be run and thus avoids uncertainty.

Example
Yes
Booleanoptional
Composer package namecomposer

If applicable the name of the "vendor" as well as the "package" should be entered in the format vendor/package, to point people directly to packagist.org, which serves as the package archive.

Example
mediawiki/semantic-media-wiki
Stringoptional
Phabricator project namephabricator

name of the project in Phabricator

Example
MediaWiki-extensions-Babel
Stringsuggested
Virtual domainvirtual domain

$wgVirtualDomainsMapping key

Stringoptional
Non-core table 1table1

Name of a non-core table used by the extension.

Example
cn_notices
Stringoptional
Non-core table 2table2

Name of a non-core table used by the extension.

Example
cn_assignments
Stringoptional
Non-core table 3table3

Name of a non-core table used by the extension.

Example
cn_templates
Stringoptional
Non-core table 4table4

Name of a non-core table used by the extension.

Example
cn_notice_languages
Stringoptional
Non-core table 5table5

Name of a non-core table used by the extension.

Example
cn_notice_projects
Stringoptional
Non-core table 6table6

Name of a non-core table used by the extension.

Example
cn_notice_countries
Stringoptional
Non-core table 7table7

Name of a non-core table used by the extension.

Example
cn_notice_regions
Stringoptional
Non-core table 8table8

Name of a non-core table used by the extension.

Example
cn_template_mixins
Stringoptional
Non-core table 9table9

Name of a non-core table used by the extension.

Example
cn_notice_mixins
Stringoptional
Non-core table 10table10

Name of a non-core table used by the extension.

Example
cn_notice_mixin_params
Stringoptional
Non-core table 11table11

Name of a non-core table used by the extension.

Example
cn_known_devices
Stringoptional
Non-core table 12table12

Name of a non-core table used by the extension.

Example
cn_template_devices
Stringoptional
Non-core table 13table13

Name of a non-core table used by the extension.

Example
cn_known_mobile_carriers
Stringoptional
Non-core table 14table14

Name of a non-core table used by the extension.

Example
cn_notice_mobile_carriers
Stringoptional
Non-core table 15table15

Name of a non-core table used by the extension.

Example
cn_notice_log
Stringoptional
Non-core table 16table16

Name of a non-core table used by the extension.

Example
cn_template_log
Stringoptional
Non-core table 17table17

Name of a non-core table used by the extension.

Stringoptional
Non-core table 18table18

Name of a non-core table used by the extension.

Stringoptional
Non-core table 19table19

Name of a non-core table used by the extension.

Stringoptional
Non-core table 20table20

Name of a non-core table used by the extension.

Stringoptional
Download linkdownload

External link to download

URLoptional
README linkreadme

External link to the readme file

URLoptional
Changelog linkchangelog

External link to the changelog file

URLoptional
Exampleexample

Example, website or screenshot of working extension

Stringoptional
Namespacenamespace

Namespace in which this extension is used

Stringoptional
Parametersparameters

Available parameters for LocalSettings.php

Example
* $wgInterwikiViewOnly * InterwikiCentralDB
Stringoptional
Tagstags

Any tags the extension uses

Stringoptional
Rightsrights

User rights added by the extension.

Stringoptional
hook1hook1

Name of a hook provided by the extension.

Example
ParserAfterTidy
Stringoptional
hook2hook2

Name of a hook provided by the extension.

Example
InitializeArticleMaybeRedirect
Stringoptional
hook3hook3

Name of a hook provided by the extension.

Example
SkinTemplateOutputPageBeforeExec
Stringoptional
hook4hook4

Name of a hook provided by the extension.

Stringoptional
hook5hook5

Name of a hook provided by the extension.

Stringoptional
hook6hook6

Name of a hook provided by the extension.

Stringoptional
hook7hook7

Name of a hook provided by the extension.

Stringoptional
hook8hook8

Name of a hook provided by the extension.

Stringoptional
hook9hook9

Name of a hook provided by the extension.

Stringoptional
hook10hook10

Name of a hook provided by the extension.

Stringoptional
hook11hook11

Name of a hook provided by the extension.

Stringoptional
hook12hook12

Name of a hook provided by the extension.

Stringoptional
hook13hook13

Name of a hook provided by the extension.

Stringoptional
hook14hook14

Name of a hook provided by the extension.

Stringoptional
hook15hook15

Name of a hook provided by the extension.

Stringoptional
hook16hook16

Name of a hook provided by the extension.

Stringoptional
hook17hook17

Name of a hook provided by the extension.

Stringoptional
hook18hook18

Name of a hook provided by the extension.

Stringoptional
hook19hook19

Name of a hook provided by the extension.

Stringoptional
hook20hook20

Name of a hook provided by the extension.

Stringoptional
hook21hook21

Name of a hook provided by the extension.

Stringoptional
hook22hook22

Name of a hook provided by the extension.

Stringoptional
hook23hook23

Name of a hook provided by the extension.

Stringoptional
hook24hook24

Name of a hook provided by the extension.

Stringoptional
hook25hook25

Name of a hook provided by the extension.

Stringoptional
hook26hook26

Name of a hook provided by the extension.

Stringoptional
hook27hook27

Name of a hook provided by the extension.

Stringoptional
hook28hook28

Name of a hook provided by the extension.

Stringoptional
hook29hook29

Name of a hook provided by the extension.

Stringoptional
hook30hook30

Name of a hook provided by the extension.

Stringoptional
hook31hook31

Name of a hook provided by the extension.

Stringoptional
hook32hook32

Name of a hook provided by the extension.

Stringoptional
hook33hook33

Name of a hook provided by the extension.

Stringoptional
hook34hook34

Name of a hook provided by the extension.

Stringoptional
hook35hook35

Name of a hook provided by the extension.

Stringoptional
hook36hook36

Name of a hook provided by the extension.

Stringoptional
hook37hook37

Name of a hook provided by the extension.

Stringoptional
hook38hook38

Name of a hook provided by the extension.

Stringoptional
hook39hook39

Name of a hook provided by the extension.

Stringoptional
hook40hook40

Name of a hook provided by the extension.

Stringoptional
hook41hook41

Name of a hook provided by the extension.

Stringoptional
hook42hook42

Name of a hook provided by the extension.

Stringoptional
hook43hook43

Name of a hook provided by the extension.

Stringoptional
hook44hook44

Name of a hook provided by the extension.

Stringoptional
hook45hook45

Name of a hook provided by the extension.

Stringoptional
hook46hook46

Name of a hook provided by the extension.

Stringoptional
hook47hook47

Name of a hook provided by the extension.

Stringoptional
hook48hook48

Name of a hook provided by the extension.

Stringoptional
hook49hook49

Name of a hook provided by the extension.

Stringoptional
hook50hook50

Name of a hook provided by the extension.

Stringoptional
hook51hook51

Name of a hook provided by the extension.

Stringoptional
hook52hook52

Name of a hook provided by the extension.

Stringoptional
hook53hook53

Name of a hook provided by the extension.

Stringoptional
hook54hook54

Name of a hook provided by the extension.

Stringoptional
hook55hook55

Name of a hook provided by the extension.

Stringoptional
hook56hook56

Name of a hook provided by the extension.

Stringoptional
hook57hook57

Name of a hook provided by the extension.

Stringoptional
hook58hook58

Name of a hook provided by the extension.

Stringoptional
hook59hook59

Name of a hook provided by the extension.

Stringoptional
hook60hook60

Name of a hook provided by the extension.

Stringoptional
hook61hook61

Name of a hook provided by the extension.

Stringoptional
hook62hook62

Name of a hook provided by the extension.

Stringoptional
hook63hook63

Name of a hook provided by the extension.

Stringoptional
hook64hook64

Name of a hook provided by the extension.

Stringoptional
hook65hook65

Name of a hook provided by the extension.

Stringoptional
hook66hook66

Name of a hook provided by the extension.

Stringoptional
hook67hook67

Name of a hook provided by the extension.

Stringoptional
hook68hook68

Name of a hook provided by the extension.

Stringoptional
hook69hook69

Name of a hook provided by the extension.

Stringoptional
hook70hook70

Name of a hook provided by the extension.

Stringoptional
hook71hook71

Name of a hook provided by the extension.

Stringoptional
hook72hook72

Name of a hook provided by the extension.

Stringoptional
hook73hook73

Name of a hook provided by the extension.

Stringoptional
hook74hook74

Name of a hook provided by the extension.

Stringoptional
hook75hook75

Name of a hook provided by the extension.

Stringoptional
hook76hook76

Name of a hook provided by the extension.

Stringoptional
hook77hook77

Name of a hook provided by the extension.

Stringoptional
hook78hook78

Name of a hook provided by the extension.

Stringoptional
hook79hook79

Name of a hook provided by the extension.

Stringoptional
hook80hook80

Name of a hook provided by the extension.

Stringoptional
hook81hook81

Name of a hook provided by the extension.

Stringoptional
hook82hook82

Name of a hook provided by the extension.

Stringoptional
hook83hook83

Name of a hook provided by the extension.

Stringoptional
hook84hook84

Name of a hook provided by the extension.

Stringoptional
hook85hook85

Name of a hook provided by the extension.

Stringoptional
hook86hook86

Name of a hook provided by the extension.

Stringoptional
hook87hook87

Name of a hook provided by the extension.

Stringoptional
hook88hook88

Name of a hook provided by the extension.

Stringoptional
hook89hook89

Name of a hook provided by the extension.

Stringoptional
hook90hook90

Name of a hook used by the extension.

Stringoptional
newhook1newhook1

Name of a hook provided by the extension.

Example
CentralNoticeCampaignChange
Stringoptional
newhook2newhook2

Name of a hook provided by the extension.

Stringoptional
newhook3newhook3

Name of a hook provided by the extension.

Stringoptional
newhook4newhook4

Name of a hook provided by the extension.

Stringoptional
newhook5newhook5

Name of a hook provided by the extension.

Stringoptional
newhook6newhook6

Name of a hook provided by the extension.

Stringoptional
newhook7newhook7

Name of a hook provided by the extension.

Stringoptional
newhook8newhook8

Name of a hook provided by the extension.

Stringoptional
newhook9newhook9

Name of a hook provided by the extension.

Stringoptional
newhook10newhook10

Name of a hook provided by the extension.

Stringoptional
newhook11newhook11

Name of a hook provided by the extension.

Stringoptional
newhook12newhook12

Name of a hook provided by the extension.

Stringoptional
newhook13newhook13

Name of a hook provided by the extension.

Stringoptional
newhook14newhook14

Name of a hook provided by the extension.

Stringoptional
newhook15newhook15

Name of a hook provided by the extension.

Stringoptional
newhook16newhook16

Name of a hook provided by the extension.

Stringoptional
newhook17newhook17

Name of a hook provided by the extension.

Stringoptional
newhook18newhook18

Name of a hook provided by the extension.

Stringoptional
newhook19newhook19

Name of a hook provided by the extension.

Stringoptional
newhook20newhook20

Name of a hook provided by the extension.

Stringoptional
newhook21newhook21

Name of a hook provided by the extension.

Stringoptional
newhook22newhook22

Name of a hook provided by the extension.

Stringoptional
newhook23newhook23

Name of a hook provided by the extension.

Stringoptional
newhook24newhook24

Name of a hook provided by the extension.

Stringoptional
newhook25newhook25

Name of a hook provided by the extension.

Stringoptional
newhook26newhook26

Name of a hook provided by the extension.

Stringoptional
newhook27newhook27

Name of a hook provided by the extension.

Stringoptional
newhook28newhook28

Name of a hook provided by the extension.

Stringoptional
newhook29newhook29

Name of a hook provided by the extension.

Stringoptional
newhook30newhook30

Name of a hook provided by the extension.

Stringoptional
newhook31newhook31

Name of a hook provided by the extension.

Stringoptional
newhook32newhook32

Name of a hook provided by the extension.

Stringoptional
newhook33newhook33

Name of a hook provided by the extension.

Stringoptional
newhook34newhook34

Name of a hook provided by the extension.

Stringoptional
newhook35newhook35

Name of a hook provided by the extension.

Stringoptional
newhook36newhook36

Name of a hook provided by the extension.

Stringoptional
newhook37newhook37

Name of a hook provided by the extension.

Stringoptional
newhook38newhook38

Name of a hook provided by the extension.

Stringoptional
newhook39newhook39

Name of a hook provided by the extension.

Stringoptional
newhook40newhook40

Name of a hook provided by the extension.

Stringoptional
newhook41newhook41

Name of a hook provided by the extension.

Stringoptional
newhook42newhook42

Name of a hook provided by the extension.

Stringoptional
newhook43newhook43

Name of a hook provided by the extension.

Stringoptional
newhook44newhook44

Name of a hook provided by the extension.

Stringoptional
newhook45newhook45

Name of a hook provided by the extension.

Stringoptional
newhook46newhook46

Name of a hook provided by the extension.

Stringoptional
newhook47newhook47

Name of a hook provided by the extension.

Stringoptional
newhook48newhook48

Name of a hook provided by the extension.

Stringoptional
newhook49newhook49

Name of a hook provided by the extension.

Stringoptional
newhook50newhook50

Name of a hook provided by the extension.

Stringoptional
newhook51newhook51

Name of a hook provided by the extension.

Stringoptional
newhook52newhook52

Name of a hook provided by the extension.

Stringoptional
newhook53newhook53

Name of a hook provided by the extension.

Stringoptional
newhook54newhook54

Name of a hook provided by the extension.

Stringoptional
newhook55newhook55

Name of a hook provided by the extension.

Stringoptional
newhook56newhook56

Name of a hook provided by the extension.

Stringoptional
newhook57newhook57

Name of a hook provided by the extension.

Stringoptional
newhook58newhook58

Name of a hook provided by the extension.

Stringoptional
newhook59newhook59

Name of a hook provided by the extension.

Stringoptional
newhook60newhook60

Name of a hook provided by the extension.

Stringoptional
newhook61newhook61

Name of a hook provided by the extension.

Stringoptional
newhook62newhook62

Name of a hook provided by the extension.

Stringoptional
newhook63newhook63

Name of a hook provided by the extension.

Stringoptional
newhook64newhook64

Name of a hook provided by the extension.

Stringoptional
newhook65newhook65

Name of a hook provided by the extension.

Stringoptional
newhook66newhook66

Name of a hook provided by the extension.

Stringoptional
newhook67newhook67

Name of a hook provided by the extension.

Stringoptional
newhook68newhook68

Name of a hook provided by the extension.

Stringoptional
newhook69newhook69

Name of a hook provided by the extension.

Stringoptional
newhook70newhook70

Name of a hook provided by the extension.

Stringoptional
newhook71newhook71

Name of a hook provided by the extension.

Stringoptional
newhook72newhook72

Name of a hook provided by the extension.

Stringoptional
newhook73newhook73

Name of a hook provided by the extension.

Stringoptional
newhook74newhook74

Name of a hook provided by the extension.

Stringoptional
newhook75newhook75

Name of a hook provided by the extension.

Stringoptional
newhook76newhook76

Name of a hook provided by the extension.

Stringoptional
newhook77newhook77

Name of a hook provided by the extension.

Stringoptional
newhook78newhook78

Name of a hook provided by the extension.

Stringoptional
newhook79newhook79

Name of a hook provided by the extension.

Stringoptional
newhook80newhook80

Name of a hook provided by the extension.

Stringoptional
newhook81newhook81

Name of a hook provided by the extension.

Stringoptional
newhook82newhook82

Name of a hook provided by the extension.

Stringoptional
newhook83newhook83

Name of a hook provided by the extension.

Stringoptional
newhook84newhook84

Name of a hook provided by the extension.

Stringoptional
newhook85newhook85

Name of a hook provided by the extension.

Stringoptional
newhook86newhook86

Name of a hook provided by the extension.

Stringoptional
newhook87newhook87

Name of a hook provided by the extension.

Stringoptional
newhook88newhook88

Name of a hook provided by the extension.

Stringoptional
newhook89newhook89

Name of a hook provided by the extension.

Stringoptional
newhook90newhook90

Name of a hook provided by the extension.

Stringoptional
Compatibility chartcompatibility

no description

Example
{{Extension Testing | ... }}
Stringoptional
TranslateWiki grouptranslate

Optional parameter to link the exact page where (message group id with which) the extension will be translatable on translatewiki.net if enabled.

Example
ext-discussiontools
Stringoptional
Vagrant rolevagrant-role

A MediaWiki-Vagrant role that lets you use this extension

Example
visualeditor
Stringoptional
Check usage linkCheckUsageNameOverride

Override the page name used for the check usage link.

Stringoptional
Bugzilla component namebugzilla

name of the Bugzilla component

Stringdeprecated

Maintenance: vulnerabilities, archived