Manual:Extensions/zh

Category:Pages using deprecated NoteTA template#%20

扩展可以讓您訂制MediaWiki的外观和工作方式。

  • 系统管理员可在他们管理的MediaWiki安装副本上安装(或移除)
  • 开发人员可以编写新或者為現有的{zh-hans:扩展; zh-hant:擴充功能;}-貢獻一份心力。
虽然许多某些是由MediaWiki的开发者维护,但其餘的是由第三方开发者所编写。 这可能会导致出现bug(在某些情况下包括安全漏洞),并且不能保证它们能够和其他相互兼容。 一些不被维护;并不是所有的都能在所有的MediaWiki版本運作。 Use extensions at your own risk, particularly those tagged as insecure. 當你使用需要修補核心軟體的時,確認已先備份你的資料庫。

选择扩展

附带扩展

部分扩展随附于MediaWiki

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.

Site admins get these automatically when installing or upgrading MediaWiki. 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.

浏览扩展

浏览::以查看全部可用的扩展。

检查已安装的扩展

Which extensions are active on an instance of MediaWiki can be checked by accessing the Special:Version page, and scrolling down to the heading Installed extensions (anchor #mw-version-ext). 例如,点击这里可以查看本wiki安装的扩展,点击这里可以了解哪些扩展被用在了英语维基百科。

受歡迎的扩展

有多個寻找受歡迎的扩展的方法。

通过ExtensionDistributor机制从MediaWiki.org下载的扩展会收集一些统计信息。 下载次数最多的前15个扩展列在Special:ExtensionDistributor处,這些扩展的下载次数显示在其信息框中。 不过需要留意的是,这些数字并不包括通过GitComposer所安裝的扩展。

还有一种选择是查看WikiApiary中已有某些扩展安装在wiki的数量。 这个网站的优点是显示的是实际的安装数而不是下载数(即它查询wiki的API),但也(截至2023年)并不是最新的。 这也不包括私有wiki的安装数量。

安装扩展

有关进一步指南,另请参阅Manual:Extensions/Installation and upgrade

安装完MediaWiki后即可安装扩展。 添加一个扩展需要下面几个步骤:

  1. 在您开始之前
    許多扩展提供专为unix安装命令而设计的使用说明。这需要命令行权限(SSH)来运行这些在扩展帮助页面上列出的命令。
  2. 下载您的扩展。
    Extension Distributor可帮你选择然後下载最受欢迎的扩展插件。
    扩展通常以模块的程序包形式发布。它们通常位于$IP/extensions/的子目录中。在维基媒体Git存储库存储的扩展列表位于git:mediawiki/extensions。有些扩展不使用版本控制,這些都不推荐使用。
    bundlesComposer包存储库中也提供了一些扩展。
    推荐在安装前阅读 README 文件。通常包含关于配置的重要信息。
  3. 安装您的扩展。
    LocalSettings.php文件的结尾添加下列代码:
    wfLoadExtension( 'ExtensionName' );
    
    这一条将强制PHP解释器来读取文件扩展,从而使其到MediaWiki访问。
    某些扩展可能与维护脚本冲突,例如它們能直接访问$_SERVER(不推荐)。 在这种情况下,他们可以被包裹在条件下进行运行,以让维护脚本仍然可以运行。
    if ( !$wgCommandLineMode ) {
       wfLoadExtension ( 'ExtensionName' );
    }
    
    对于任何需要自定义命名空间的扩展,维护脚本importDump.php将失败,这些命名空间在上面的条件中被包含,例如扩展:Semantic MediaWiki:
确保为扩展设置了所需的权限!
虽然此安装过程对于大多数扩展来说已足够,但某些扩展需要不同的安装过程。检查您的扩展文档以获取详情。
如果要在LocalSettings.php中更改配置变量,通常都必须在包含扩展之后再去做。否则,扩展中定义的默认值将覆盖您的设置。

升级扩展

当你升级你的MediaWiki时,部分扩展也需要升级,而其他部分扩展则可能支持向上兼容。 升级某个扩展到新版本:

  1. 下载新版本的扩展
  2. 替换extensions/ExtensionName目录下所有扩展文件为新版本的文件。不要删除LocalSettings.php中存在的扩展的配置。
  3. 如果扩展需要修改MediaWiki的資料庫,則必需去运行update.php维护脚本。多数扩展会提及是否需要运行这个脚本。(在执行脚本之前請执行数据备份)。如果你没有使用命令行的权限,你也可以使用网络更新
這手冊包含超過99%的扩展。如果您要升級的特定扩展的指示與這些指示不同,您可能應該遵循特定扩展的指示。

卸载扩展

删除LocalSettings.php中带有扩展名的那一行以将其卸载:

wfLoadExtension( 'ExtensionName' );
  • 您必须删除与扩展配置有关的所有行。

開發扩展

MediaWiki 核心提供了幾種方式讓扩展改變wiki的行為和外觀。 這些扩展點能讓扩展彈性地增加特性和功能,例如顯示特殊頁面或定義API模組。 若要跨出第一步,請參閱開發扩展指南。 在撰寫新的扩展之前,請考慮為現有的扩展貢獻一份心力、或是協助未維護的扩展

Users can also make a general request on Phabricator, and hope that your good idea is picked up by a developer.


Category:Customization techniques/zh#Extensions/zh Category:Extension creation/zh
Category:Customization techniques/zh Category:Extension creation/zh Category:Pages using deprecated NoteTA template