Jump to content
MediaWiki

Manual:扩展

本頁使用了標題或全文手工轉換
From mediawiki.org
This page is a translated version of the page Manual:Extensions and the translation is 100% complete.

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

  • 系统管理员可在他们管理的MediaWiki安装副本上安装(或移除)扩展。
  • 开发人员可以编写新扩展或者為現有的{zh-hans:扩展; zh-hant:擴充功能;}-貢獻一份心力。
虽然某些扩展是由MediaWiki的开发者维护,但其餘的擴充功能是由第三方開發,可能處於無人維護的狀態. 因此,許多擴充功能可能含有bug,某些情況下甚至包含安全漏洞。 並非所有擴充功能皆與每個版本的MediaWiki相容,且當它們同時使用時,其運作可能無法穩定可靠。 使用擴充功能需自行承擔風險,特別是那些標記為不安全的擴充功能。 若擴充功能需要對核心軟體進行修補,請務必事先備份資料庫,以盡量降低破壞你的維基的風險。

选择扩展

同捆的扩展

若干擴充功能已預設與MediaWiki同捆

這些擴充功能通常應具備高度實用性、高效能運作、穩定可靠、程式碼結構良好,且無已知重大安全漏洞。 它們還應與 MediaWiki 的最新版本相容,並彼此相容(即一個擴充功能不應阻礙另一個擴充功能的運作)。 同捆式的擴充功能可能依賴於一個或多個其他擴充功能,只要這些擴充功能同樣屬於同綁式即可。

網站管理員在安裝或升級 MediaWiki 時會自動獲得這些權限。 升級 MediaWiki 時,所有擴充功能的升級也將自動套用。 網站管理員可視情況選擇卸載其中任何一個擴充功能。

關於哪些擴充功能應納入此群組,有公開、正進行的討論。 您可以建議其他要同捆的擴充功能 。 擴充功能將在開發人員達成共識後進行打包。

若擴充功能被併入MediaWiki的核心 、被替代方案取代,或在極罕見情況下發現無法解決的重大安全漏洞,則該擴充功能可能從套件中移除。

浏览扩展

請浏览Category:所有扩展 Category:按分类排列的扩展 以查看全部可用的扩展。

检查已安装的扩展

可透過存取Special:Version頁面去檢查在MediaWiki的實例上有哪些擴充功能處於啟用狀態,並向下滾動至標題「已安裝的擴充功能」處(錨點 #mw-version-ext)。 例如,這些擴充功能已安裝於此維基,而這些擴充功能則在英語維基百科中處於啟用狀態。

受歡迎的扩展

还有一种选择是查看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 将失败,这些命名空间在上面的条件中被包含,例如Extension:Semantic MediaWiki(语义 MediaWiki) ,Extension:Page Forms(页面表单)
确保为扩展设置了所需的权限!
虽然此安装过程对于大多数扩展来说已足够,但某些扩展需要不同的安装过程。 检查您的扩展文档以获取详情。
如果要在LocalSettings.php中更改配置变量,通常都必须在包含扩展之后再去做。 否则,扩展中定义的默认值将覆盖您的设置。

升级扩展

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

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

卸载扩展

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

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

開發扩展

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

使用者亦可透過Phabricator提出一般性請求,期待您的好點子能被開發人員採納。 请参阅https://phabricator.wikimedia.org/tag/mediawiki-extension-requests/

参阅

AltStyle によって変換されたページ (->オリジナル) /