Manual:افزودن ها
افزونهها به شما امکان میدهند نحوه و عملکرد مدیاویکی را به شخصیسازی کنید.
- مدیران سامانه میتوانند افزونههای مدیاویکی را در ویکی تحت مدیریت خود نصب (یا حذف) کنند.
- توسعه دهندگان میتوانند افزونههای جدید بنویسند یا افزونهها را بهبود دهند و حفظ کنند.
انتخاب افزونه
Bundled extensions
Several extensions are bundled with MediaWiki as standard.
These extensions should generally be of high utility, perform efficiently, be stable, be well-written, and have no known major security issues. They should also be compatible with the latest versions of MediaWiki, and with each other (i.e. one extension shouldn't block the functions of another). A bundled extension may have a dependency on one or more other extensions, as long as those are also bundled.
مدیر های سایت مدیاویکی این را خودکار میگیرند وقتی مدیاویکی را نصب یا بروز رسانی کردند When upgrading MediaWiki, any extension upgrades will be automatically applied as well. Site admins may choose to uninstall any of these, if they wish.
There are open, ongoing discussions about which extensions should be part of this group. You can suggest additional extensions to be bundled. Extensions will be bundled once the developers reach a consensus to do so.
An extension may be removed from bundling if its functionality is merged into MediaWiki core, it is replaced by an alternative, or in the unlikely event of any unsolvable major security vulnerabilities being discovered.
یافتن افزونهها
برای دیدن طیف گستردهای از افزونهها که قبلاً نوشته شدهاند میتوانید $cat را مرور کنید.
بررسی افزونههای نصب شده
اینکه کدام افزونهها روی یک نمونه از مدیاویکی فعال هستند را میتوان با دسترسی به صفحه 1$ و اسکرول کردن به پایین تا عنوان «افزونههای نصبشده» (با نماد 2$) بررسی کرد. مثلا، این افزونه در این ویکی، و این افزونه در ویکی پدیای انگلیسی فعال است.
پرطرفدارترین افزونهها
WikiApiary counts wikis that extensions are installed on. This represents actual installations and not just downloads (i.e. it queries the wiki's APIs), but it is also (as of 2023) not completely up-to-date. It also doesn't count installations on private wikis.
نصب افزونه
- For further guidance, see also Manual:Extensions/Installation and upgrade
مدیاویکی آماده است پس از اتمام نصب افزونهها را بپذیرد. برای افزودن افزونهها، این مراحل را دنبال کنید:
- پیش از اینکه آغاز کنید
- بسیاری از افزونهها دستورالعملهایی را برای نصب با استفاده از دستورات یونیکس طراحی کرده اند. برای وارد کردن این دستورات ذکر شده در صفحات راهنمای پسوند، به دسترسی پوسته (SSH) نیاز دارید.
- افزونه خود را دانلود کنید
- توزیع کننده افزونهها به شما کمک می کند که بیشتر افزونههای محبوب را انتخاب و بارگیری کنید.
- افزونه ها معمولاً به صورت بسته های مدولار توزیع می شوند. آنها معمولاً در زیر شاخه
$IP/extensions/خود قرار می گیرند. لیستی از افزونههای ذخیره شده در ویکیمدیا مخزن Git در git:mediawiki/extensions قرار دارد. برخی از افزونهها نسخه کنترل ندارند و توصیه نمیشوند. - برخی از افزونهها نیز در بسته نرم افزاری، Composer یا مخزن بسته موجود است.
- پیشنهاد میشود قبل از نصب، فایل README را بخوانید. It usually contains important info about configuration.
- افزونه خود را نصب کنید
- در انتهای پرونده
LocalSettings.php، اضافه کنید: wfLoadExtension( 'ExtensionName' );
- این خط مفسر PHP را مجبور می کند تا پرونده افزونه را بخواند، و در نتیجه آن را برای مدیاویکی قابل دسترسی می کند.
- برخی از افزونه ها می توانند با اسکریپت های نگهداری در تضاد باشند، به عنوان مثال اگر به طور مستقیم به
$_SERVERدسترسی داشته باشند (توصیه نمی شود). In this case, they can be wrapped in the conditional so maintenance scripts can still run. if ( !$wgCommandLineMode ) { wfLoadExtension ( 'ExtensionName' ); }
- The maintenance script importDump.php will fail for any extension which requires customised namespaces which is included inside the conditional above such as Extension:Semantic MediaWiki, Extension:Page Forms.
- در انتهای پرونده
- Ensure that required permissions are set for extensions!
- While this installation procedure is sufficient for most extensions, some require a different installation procedure. برای گرفتن اطلاعات اسناد افزونه خود را چک کنید.
- If you want to alter configuration variables in
LocalSettings.php, you have to do this typically after including the extension. Otherwise defaults defined in the extension will overwrite your settings.
بروزرسانی افزونه
Some extensions require to be updated whenever you update MediaWiki, while others work with multiple versions. برای بروزرساتی افزونه به نسخه جدید:
- نسخه جدید افزونه ها را دانلود کنید
- تمام فایل های افزونه در دایرکتوری
extensions/ExtensionNameرا با فایل های جدید جایگزین کنید. Do not remove the extension configuration present inLocalSettings.php - If the extension requires changes to the MediaWiki database, you will need to run the update.php maintenance script. Most extensions will mention if this script needs to be run or not. (Perform backup of your data before executing the script). If you don't have command line access, you can also use the web updater.
حذف افزونه
خط را از LocalSettings.php با نام پسوند حذف کنید تا حذف نصب شود:
wfLoadExtension( 'ExtensionName' );
- شما باید خطوط مربوط به پیکربندی افزونه را حذف کنید.
ساختن افزونه
MediaWiki core provides several ways for extensions to change the behavior and appearance of a wiki. Various extension points give extensions flexibility to add features and functionality, such as displaying a special page or defining an API module. To get started, see the guide to developing extensions. Before writing a new extension, consider contributing to an existing extension or helping with an unmaintained extension.
Users can also make a general request on Phabricator, and hope that your good idea is picked up by a developer. See https://phabricator.wikimedia.org/tag/mediawiki-extension-requests/
جستارهای وابسته
- رده:افزونهها
- الگو:افزونه
- دستی: در حال توسعه برنامه های افزودنی
- Manual:ترجمه افزونهها – اطلاعاتی مربوط به ترجمه افزونهها.
- Special:ExtensionDistributor – شامل لیست ۱۵ افزونه محبوب ترین در کنترل نسخه ویکی مذیا است
- extloc – وسعت های MediaWiki در تولید ویکیمیا کجا استفاده می شوند؟
- API:Siteinfo#Extensions
- Manual:Extending wiki markup
- Manual:قلابها
- Manual:واژههای جادویی
- Manual:پوستهها