Developer hub/zh



This is a high-level overview of MediaWiki development, including links to the key documents, resources and tools available to MediaWiki developers. It is written for skilled LAMP developers who have experience using MediaWiki.

For an introductory guide to developing MediaWiki, read how to become a MediaWiki hacker.

如果您想找如何安装和配置 MediaWiki 的内容的话，请参见管理员帮助文档.

Overview
MediaWiki is developed in an open source style using the PHP programming language primarily for the LAMP platform. Core development is largely coordinated online.


 * Development discussion happens on various mailing lists and IRC channels. The main developer list is wikitech-l. The main developer IRC channels are #mediawiki and #wikimedia-dev. Read the Developers article to get a sense for who the people on the mailing lists and IRC channels are.


 * MediaWiki roadmap – 计划添加的新功能以及发布版本，随时变动，仅供参考


 * Source code is managed using the Git revision control system. Read the Git article for an overview of how the MediaWiki developers use Git. Read the labsconsole Help:Access article if you'd like access.


 * Code review is performed on Gerrit, see this tutorial to get set up with git and gerrit in order to submit patches.


 * Developers extending or interfacing with MediaWiki (instead working on the core code) have several convenient extension points, including the API, the Hooks system and Skins – see the section of this page for an overview.

扩展 MediaWiki
MediaWiki 中有五个地方可以让开发人员添加新功能或者修改现有的功能. 可以扩展现有的功能而无须改动核心代码，是 MediaWiki 的设计原则之一. 这也使得用户可以很方便地升级 MediaWiki 也无须每次都手动把自己的修改重新加入到新版本的代码中. 而这些扩展点分别是：


 * API – access the data and metadata of MediaWiki instances through a powerful web API.


 * Hooks – 系统的执行挂钩


 * Parser Functions – 添加自定义的指令，例如


 * Skins – 自定义 MediaWiki 的外观


 * Special Pages – 添加自定义的特殊页面


 * Tag Extensions – 添加自定义的标签，例如

插件开发人员的帮助文档

 * Manual:Developing extensions – a guide to developing extensions.
 * Project:WikiProject Extensions
 * Extensions FAQ
 * Extension Matrix – an auto-generated list of extensions. See also Category:Extensions, a less complete list of extensions.
 * Manual:$wgExtensionFunctions – use to defer setup (or run other callbacks) for extensions until after the MediaWiki core is setup.

Help for skin developers

 * Manual:Skinning – instructions on how to create a skin for MediaWiki.
 * Manual:Skin configuration – a guide to configuring skins for a wiki.

Third-party wiki uses

 * Enterprise hub - For Enterprise wikis
 * Academic hub - For Academic wikis