Manual:Using MediaWiki as a content management system

Jump to navigation Jump to search

MediaWiki can be used as a "CMS" content management system, e.g. if you want to create a bliki (combination blog/wiki). Before going this route, you may want to consider factors involved in deciding whether to use a wiki as your website type.

Advantages and disadvantages[edit]

Using MediaWiki as a CMS might be an appealing option if you are familiar with the ins and outs of editing MediaWiki and administering MediaWiki installations, but lack the time or inclination to learn how to use other CMS software (such as Wordpress, Joomla or Drupal). It might also be beneficial if you already have some pages written in MediaWiki markup that you want to import into your site.

MediaWiki was designed for openness and mass collaboration, though, rather than for single-user blogging. There are fewer MediaWiki installations than there are other CMS installations, because one MediaWiki installation can often serve hundreds or thousands of users, while typically there is one Wordpress installation per person or several persons. Therefore, arguably not as much attention has been paid to making MediaWiki easy for the non-technically-savvy to administer. For example, MediaWiki lacks the sort of advanced extension management platform offered by Wordpress. If you primarily just need a CMS, and only have limited need for wiki-style collaborative tools, an alternative is to get a CMS and install an extension that will provide those capabilities. See for example the DokuWiki extension to Joomla. There are also some wiki software packages, such as Confluence, Foswiki, SharePoint, Tiki Wiki CMS Groupware, TWiki, and XWiki, that have blogging functionality either built into their cores or available through plugins.

One possibility, if you like Visual Basic, is to combine MediaWiki with vbadvanced, vbulletin, mediawiki, and vbwikipro. Vbulletin allows you to have forums and blogs, along with e-commerce possibilities and social networking. VBAdvanced handles all your CMS issues, add modules, and allow you to integrate all types of pages (such as flash, php, and html apps). Then you can add MediaWiki and the vbulletin bridge, which would be vbwikipro.


Some extensions you might want to use are:

  • Extension:Semantic MediaWiki - allows you to define and query data from within the wikis pages. You can add data like date, tags, author etc. to your wiki articles and query for these articles.



Here are some configuration settings you may want to adjust if you're interested in using MediaWiki as a content management system (particularly a single-user CMS).

#Stricter than normal settings:

#prevent anonymous users from registering
$wgGroupPermissions['*']['createaccount'] = false;
#prevent anonymous users from editing
$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['createpage'] = false;
#disable section edit links for anonymous viewers
$wgDefaultUserOptions['editsection'] = false;
#disable RSS/atom change feeds
$wgFeed = false;
#Looser than normal settings:
#disable 'nofollow' on external links
$wgNoFollowLinks = false;
#allow uploading of non-images
$wgStrictFileExtensions = false;
$wgCheckFileExtensions = false;
$wgVerifyMimeType = false;
#disable anti-vandalism patrols
$wgUseNPPatrol = false;
$wgUseRCPatrol = false;
#allow raw HTML in <html>...</html> blocks
$wgRawHtml = true;
#allow more liberal redirecting
$wgMaxRedirects = 42;
$wgFixDoubleRedirects = true;
#unless your site is multilingual..
$wgHideInterlanguageLinks = true;
#unless you use the Universal Edit Button..
$wgUniversalEditButton = false;


You may also want to disable certain pages in your robots.txt file for search engine optimization purposes:

User-agent: *
Disallow: /wiki/Special:Random
Disallow: /wiki/Special%3ARandom
Disallow: /wiki/Special:Search
Disallow: /wiki/Special%3ASearch


Some settings for your MediaWiki:Common.css

.portal h5,
#mw-searchButton {
display: none; /* remove all tools and wikistuff */

/* start customizing */
body {
background-color: #c3dee9; /* example for a new color */
padding: 260px 0 0 60px; /* example for a new proportion */
#p-logo {
top: -180px;


Some settings for your MediaWiki:Common.js

$(document).ready(function() {
 if ( wgUserName != null ) { // reappearance wikistuff like editbutton for your website staff
  $('#mw-head').css({ "display": "block" });

See also[edit]