MediaWiki: Difference between revisions
No edit summary |
No edit summary |
||
Line 20: | Line 20: | ||
MediaWiki is written in the [[PHP|PHP programming language]], and can use either the [[MySQL]] or [[PostgreSQL]] [[relational database management system]]. MediaWiki is distributed under the terms of the [[GNU General Public License]], making it [[free software]]. | MediaWiki is written in the [[PHP|PHP programming language]], and can use either the [[MySQL]] or [[PostgreSQL]] [[relational database management system]]. MediaWiki is distributed under the terms of the [[GNU General Public License]], making it [[free software]]. | ||
== History == | == History ==Since the release of the first version of Manske's script, the software had been given multiple nicknames representing the state of development—"the PHP script", "phase II", "phase III", "the new codebase"—but no product name. After the [[Wikimedia Foundation]] was announced on [[June 20]] [[2003]], the name "MediaWiki" was coined by Wikipedia contributor Daniel Mayer as a play on "Wikimedia," <ref>{{cite web|url=http://mail.wikipedia.org/pipermail/wikipedia-l/2003-July/010966.html|last=Mayer|first=Daniel|accessdate =|title=Phase IV, Wikibooks.org/.com and WikimediaFoundation.org/.com (was Wikis and uniformity)|work=Wikipedia-L mailing list archives}}</ref> and the name was gradually phased in beginning in August 2003. The name has frequently caused confusion due to its intentional similarity to the "Wikimedia" name (which itself is similar to "Wikipedia"). Nevertheless, "MediaWiki" has become a recognizable brand, with a [[Google]] search yielding over 150 million results on the name in February [[As of 2007|2007]]. | ||
Since the release of the first version of Manske's script, the software had been given multiple nicknames representing the state of development—"the PHP script", "phase II", "phase III", "the new codebase"—but no product name. After the [[Wikimedia Foundation]] was announced on [[June 20]] [[2003]], the name "MediaWiki" was coined by Wikipedia contributor Daniel Mayer as a play on "Wikimedia," <ref>{{cite web|url=http://mail.wikipedia.org/pipermail/wikipedia-l/2003-July/010966.html|last=Mayer|first=Daniel|accessdate =|title=Phase IV, Wikibooks.org/.com and WikimediaFoundation.org/.com (was Wikis and uniformity)|work=Wikipedia-L mailing list archives}}</ref> and the name was gradually phased in beginning in August 2003. The name has frequently caused confusion due to its intentional similarity to the "Wikimedia" name (which itself is similar to "Wikipedia"). Nevertheless, "MediaWiki" has become a recognizable brand, with a [[Google]] search yielding over 150 million results on the name in February [[As of 2007|2007]]. | |||
The product logo was created by Erik Moeller using a flower photograph taken by [[Florence Nibart-Devouard]], and was originally submitted to an international logo contest for a new Wikipedia logo held in summer 2003.<ref name="Logo contest">{{cite web | title = International logo contest/results| url = http://meta.wikimedia.org/w/index.php?title=International_logo_contest/Results&oldid=509000 | author = Wikimedia contributors | work = Meta-wiki | publisher = [[Wikimedia Foundation]] | date = [[2007-01-10]] | accessdate = 2007-03-14}}</ref> The logo came in third place, and was chosen to represent MediaWiki instead of Wikipedia, with the second place logo used for the [[Wikimedia Foundation]] and the first place logo for Wikipedia itself.<ref name="Meta logo history">{{cite web | author = Wikimedia contributors | title = Historical/Logo history | url = http://meta.wikimedia.org/w/index.php?title=Meta:Historical/Logo_history&oldid=513925 | publisher = [[Wikimedia Foundation]] | date = [[2007-01-17]] | accessdate = 2007-03-14 | work = Meta-wiki}}</ref> | The product logo was created by Erik Moeller using a flower photograph taken by [[Florence Nibart-Devouard]], and was originally submitted to an international logo contest for a new Wikipedia logo held in summer 2003.<ref name="Logo contest">{{cite web | title = International logo contest/results| url = http://meta.wikimedia.org/w/index.php?title=International_logo_contest/Results&oldid=509000 | author = Wikimedia contributors | work = Meta-wiki | publisher = [[Wikimedia Foundation]] | date = [[2007-01-10]] | accessdate = 2007-03-14}}</ref> The logo came in third place, and was chosen to represent MediaWiki instead of Wikipedia, with the second place logo used for the [[Wikimedia Foundation]] and the first place logo for Wikipedia itself.<ref name="Meta logo history">{{cite web | author = Wikimedia contributors | title = Historical/Logo history | url = http://meta.wikimedia.org/w/index.php?title=Meta:Historical/Logo_history&oldid=513925 | publisher = [[Wikimedia Foundation]] | date = [[2007-01-17]] | accessdate = 2007-03-14 | work = Meta-wiki}}</ref> |
Revision as of 20:28, 30 March 2007
Template:Infobox Software2 MediaWiki is a web-based wiki software application used by all projects of the Wikimedia Foundation, all wikis hosted by Wikia, and many other wikis, including some of the largest and most popular ones.[1] Originally developed to serve the needs of the free content Wikipedia encyclopedia, today it has also been deployed by companies as an internal knowledge management solution, and as a content management system. Notably, Novell uses it to operate several of its high traffic websites, which are not editable by the general public.[2]
MediaWiki is written in the PHP programming language, and can use either the MySQL or PostgreSQL relational database management system. MediaWiki is distributed under the terms of the GNU General Public License, making it free software.
== History ==Since the release of the first version of Manske's script, the software had been given multiple nicknames representing the state of development—"the PHP script", "phase II", "phase III", "the new codebase"—but no product name. After the Wikimedia Foundation was announced on June 20 2003, the name "MediaWiki" was coined by Wikipedia contributor Daniel Mayer as a play on "Wikimedia," [3] and the name was gradually phased in beginning in August 2003. The name has frequently caused confusion due to its intentional similarity to the "Wikimedia" name (which itself is similar to "Wikipedia"). Nevertheless, "MediaWiki" has become a recognizable brand, with a Google search yielding over 150 million results on the name in February 2007.
The product logo was created by Erik Moeller using a flower photograph taken by Florence Nibart-Devouard, and was originally submitted to an international logo contest for a new Wikipedia logo held in summer 2003.[4] The logo came in third place, and was chosen to represent MediaWiki instead of Wikipedia, with the second place logo used for the Wikimedia Foundation and the first place logo for Wikipedia itself.[5]
Release history
Version number | Date | Notable changes |
---|---|---|
1.1[6] | December 8 2003 |
|
1.2[7] | March 24 2004 |
|
1.3[8] | August 11 2004 |
|
1.4[9] | March 20 2005 |
|
1.5[10] | October 5 2005 |
|
1.6[11] | April 5 2006 |
|
1.7[12] | July 7 2006 |
|
1.8[13] | October 10 2006 |
|
1.9[14] | January 10 2007 |
|
Key features
MediaWiki provides a rich core feature set and a mechanism to attach extensions to provide additional functionality. Due to the strong emphasis on multilinguality in the Wikimedia projects, internationalization has received significant attention by developers. The user interface has been fully or partially translated into more than 70 languages, and can be further customized by site administrators (the entire interface is editable through the wiki). Because Wikipedia is one of the world's largest websites, achieving scalability through multiple layers of caching and database replication has also been a major concern for developers. Wikipedia and other Wikimedia projects continue to define a large part of the requirement set for MediaWiki.
Links

One of the earliest differences between MediaWiki (and its predecessor, UseModWiki) and other wiki engines was the use of "free links" instead of CamelCase. Where, in a typical wiki, you would have to type a text like "WorldWideWeb" to create a link to a page about the World Wide Web, links in MediaWiki are created by surrounding words with double square brackets, and any spaces between them are left intact, e.g. [[World Wide Web]]. This change was logical for the purpose of creating an encyclopedia, where accuracy in titles is very important.
Namespaces
MediaWiki provides many features beyond hyperlinks for structuring content. One of the earliest features is namespaces. One problem for Wikipedia had long been the separation of encyclopedic content from discussions surrounding it, as well as personal pages about encyclopedia editors. Namespaces are prefixes before a page title (like "User:" or "Talk:") which allow a page to exist under multiple names, but serving different purposes depending on their prefix. For instance, a page "[[The Terminator]]" could describe the 1984 movie starring Arnold Schwarzenegger, while a page "[[User:The Terminator]]" could be a profile describing a user who chooses this name as a pseudonym. More commonly, each page has an associated "Talk:" page which can be used to discuss its contents.
Namespaces can be viewed as folders which separate different basic types of information or functionality. While new namespaces can be added, the number of namespaces in a wiki is typically relatively low.
Subpages
In addition to namespaces, pages can be structured using subpages. This simple feature provides automatic backlinks from a page of the pattern [[Page title/Subpage title]] to the component before the slash (in this case, "Page title").
Categories
Finally, MediaWiki supports user-created categories. These are similar to tags used in many web applications, but hierarchical and descriptive. In large wikis like Wikipedia, very complex hierarchies have grown using this system without any central planning.[15]
Editable interface

The entire MediaWiki user interface can be edited through the wiki itself by users with the necessary permissions (typically so-called "administrators"). This is done through a special namespace with the prefix "MediaWiki:", where each page title identifies a particular user interface message. The "MediaWiki:" namespace was also originally used for creating custom text blocks that could then be dynamically loaded into other pages using a special syntax. This content was later moved into its own namespace, "Template:".
Templates
Templates are text blocks which can be dynamically loaded inside another page whenever that page is requested. Templates support parameters, so that parts of the text can be substituted for each specific use case.
Templates have found many different uses, such as:
- Identifying problems with a Wikipedia article by putting a template (also called "tag" in this context) such as {{Disputed}} on the article. This template will then output a graphical box stating that the article is disputed, and also categorize it so that articles of this nature can be located.
- Creating complex table layouts which are used consistently across multiple pages, and where only the content of the tables gets inserted using template parameters.
- Sending users standard messages when they are blocked from editing, when their behavior is considered inappropriate, and so on. For this purpose, template substitution can be used: Instead of loading the template contents dynamically whenever the page is loaded, the contents of the template are inserted exactly once into the target page, similar to a copy and paste operation.
Media content
As the name MediaWiki suggests, the software has become ever more powerful at dealing with a wide variety of uploaded media files. Its richest functionality is in the area of images, where image galleries and thumbnails can be generated with relative ease if the software is set up correctly. There is also support for Exif metadata. The use of MediaWiki to operate the Wikimedia Commons, one of the largest free content media archives, has driven the need for further functionality in this area.
WYSIWYG
MediaWiki currently provides no native WYSIWYG support, though it does come with a graphical toolbar for simplifying the process of learning the wiki syntax. It also has a simple interface to allow the transparent use of external editors for uploaded files and wiki pages.
Sections
To make editing long pages such as comprehensive Wikipedia articles easier, MediaWiki supports editing only a small subsection of a page (as identified by its header).
Rich content
MediaWiki also supports rich content generated through specialized syntax. For example, the software comes with support for rendering mathematical formulas using LaTeX and a special parser written in OCaml. Similar functionality for other content, ranging from graphical timelines over mathematical plotting and musical scores to Egyptian hieroglyphs, is available in the form of extensions.
Customisable interface
If the feature is enabled, users can also customize their stylesheets and configure client-side JavaScript to be executed with every pageview. On Wikipedia, this has led to a large number of additional tools and helpers developed through the wiki and shared among users. For instance, Wikipedia user "Lupin" created a custom JavaScript tool that shows previews of articles when the user hovers over links, and also provides shortcuts for common maintenance tasks.[16]
Access and groups
While MediaWiki comes with a basic set of features related to restricting access and defining user groups, page access control does not tend to be given high priority in development. For instance, it is not possible to define the access permissions to pages on a per-namespace basis. Here, wikis like TWiki and MoinMoin provide more power by supporting advanced security mechanisms like Access Control Lists.
Extensions

The MediaWiki codebase contains various "hooks" where additional code can be attached. This allows programmers to write extensions without modifying the core or having to submit their code for review. Installing an extension typically consists of adding a line to the configuration file, though in some cases additional changes such as database updates are required.
Many of the available extensions are simple scripts to allow embedding content such as Adobe Flash files or HTML forms, while others such as Semantic MediaWiki add complex new behavior to the wiki syntax. The Wikimedia Foundation operates a Subversion server where many extensions are hosted, and a directory of them can be found on the MediaWiki website.[17]
Performance
Because it is used to run one of the highest traffic sites on the World Wide Web, Wikipedia, MediaWiki performance and scalability have been highly optimized. MediaWiki supports Squid caches, load balanced database replication, client-side caching, memcached or table-based caching for frequently accessed processing or query results, a simple static file cache, feature-reduced operation, revision compression, and a job queue for database operations.
MediaWiki may be overdimensioned for small-scale usage, where its large feature set and use of a database backend take a performance toll. On the other hand, the software is suitable for the operation of large scale wiki farms, such as the Wikimedia project and language family. However, MediaWiki comes with no built-in functionality to manage such installations.
References
See also
- Comparison of wiki software
- GetWiki: a fork.
- IpbWiki - Integration of Invision Power Board with MediaWiki
- List of content management systems
- List of wiki software
External links
- MediaWiki official homepage
- Download and project page on SourceForge
- MediaWiki on the Meta-Wiki, Wikimedia's meta website.
- MediaWiki bug tracker
- MediaWiki Administrators' Tutorial Guide, March 2007, Packt Publishing
als:MediaWiki ar:ميدياويكي ast:MediaWiki zh-min-nan:MediaWiki bs:MediaWiki bg:МедияУики ca:MediaWiki cs:MediaWiki da:MediaWiki de:MediaWiki dv:MediaWiki et:MediaWiki es:MediaWiki eo:MediaWiki eu:MediaWiki fa:مدیاویکی fr:MediaWiki gl:MediaWiki ko:미디어위키 hr:MediaWiki id:MediaWiki it:MediaWiki he:מדיה-ויקי csb:MediaWiki ku:MediaWiki lb:MediaWiki li:MediaWiki jbo:MediaWiki mg:MediaWiki nl:MediaWiki ja:MediaWiki no:MediaWiki nn:MediaWiki oc:MediaWiki pl:MediaWiki pt:MediaWiki ru:MediaWiki simple:MediaWiki sk:MediaWiki sr:MediaWiki fi:MediaWiki sv:MediaWiki ta:மீடியாவிக்கி th:มีเดียวิกิ vi:MediaWiki tr:MediaWiki yi:מעדיעוויקי zh:MediaWiki
- ↑ Template:Cite web
- ↑ e.g.: http://developer.novell.com/ ; http://hula-project.org/ ; http://en.opensuse.org/ ; http://www.ifolder.com/
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Template:Cite web
- ↑ Full release notes 1.1
- ↑ Full release notes 1.2
- ↑ Full release notes 1.3
- ↑ Full release notes 1.4
- ↑ Full release notes 1.5
- ↑ Full release notes 1.6
- ↑ Full release notes 1.7
- ↑ Full release notes 1.8
- ↑ Full release notes 1.9
- ↑ Compare Erik Zachte's category trees generated from Wikipedia category information.
- ↑ Template:Cite web
- ↑ see http://www.mediawiki.org/wiki/Extension:Contents