开发人员中心

From MediaWiki.org
Jump to: navigation, search
This page is a translated version of the page Developer hub and the translation is 100% complete.

Other languages:
العربية • ‎български • ‎català • ‎čeština • ‎dansk • ‎Deutsch • ‎Ελληνικά • ‎English • ‎español • ‎فارسی • ‎suomi • ‎français • ‎galego • ‎עברית • ‎Bahasa Indonesia • ‎italiano • ‎日本語 • ‎한국어 • ‎Nederlands • ‎polski • ‎português • ‎português do Brasil • ‎русский • ‎سنڌي • ‎සිංහල • ‎тоҷикӣ • ‎ไทย • ‎Türkçe • ‎Tiếng Việt • ‎粵語 • ‎中文
Crystal Clear app display.png 用户User hub Nuvola-inspired-terminal.svg 系统管理员Sysadmin hub Source code project 1171.svg 开发员Developer hub

MediaWiki开发说明,包括关键文件,资源和开发工具。它是为使用过MediaWiki的熟练LAMP(软件包) 程序员写的

概要

MediaWiki是维基百科與其姊妹项目,还有世界各地数以千计的维基网站使用的软件。

MediaWiki以PHP编程语言书写[1]。 它使用jQuery作为客户端JavaScript库。

MediaWiki主要为LAMP平台开发[2],并可以在大多数操作系统上运行。MediaWiki主要使用MySQL和MariaDB数据库服务器。[3]

开发以开源形式进行[4]、高度在线协调、并受维基媒体基金会支持,当然志愿社群开发者同样也做出了伟大贡献。

主要文档

编码、开发和规范

调试和测试


系统架构

子系统

扩展 MediaWiki

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

  • API——通过其web API,访问MediaWiki实例的数据和元数据
  • 钩子——系统的执行挂钩。
  • 解析器函数——添加自定义的指令,例如:{{#if:...|...|...}}
  • 皮肤——自定义 MediaWiki 的外观。
  • 特殊页面——添加自定义的特殊页面。
  • 标签扩展——添加自定义的标签,例如:<newtag>...</newtag>
  • Extending wiki markup – add a parser hook to modify the content of wikitext.

插件开发人员的帮助文档

皮肤开发人员的帮助文档

库代码复用的帮助

使用第三方维基站点

备注

  1. 不是所有MediaWiki代码都由PHP书写。一些支持工具是用其他语言书写的,包括批处理文件shell脚本makefilesPython
  2. MediaWiki可以运行在大多数支持PHP的平台上,然而在非LAMP平台上,由于缺少某些实用工具或操作系统功能,可能会限制MediaWiki的功能或性能。
  3. 除了MySQLMariaDB以外,MediaWiki还支持其他数据库管理系统,包括Oracle数据库PostgreSQLSQLiteMicrosoft SQL Server
  4. 开发者是志愿者和多个组织的带薪职员(或承包商)的组合。 要查找工作于MediaWiki代码的人完整列表,请阅读DevelopersDevelopers条目。
  5. 在https://phabricator.wikimedia.org/diffusion/浏览源代码和代码存储库的修订,或使用Gerrit下载源代码至您的系统。