http://www.mediawiki.org/wiki/Manual:FAQ
Frequently asked questions (FAQ) about MediaWiki. If your question is neither answered here nor in the
old meta FAQ, then please ask for help in our
IRC channel or in the
Support desk.
This FAQ is slowly replacing the
version at meta. If the answer you are looking for is not found below, try looking there as well.
Languages: English •
Català •
Deutsch •
Español •
Français •
ગુજરાતી •
עברית •
Italiano •
日本語 •
한국어 •
മലയാളം •
Occitan •
Polski •
Português •
Русский •
中文(简体)
Contents
[
hide]
Installation and configuration
Where do I download MediaWiki?
Click here to download the latest stable release of MediaWiki. Files are supplied in a
.tar.gz archive. MediaWiki can also be
obtained direct from our Subversion repository.
How do I install MediaWiki?
Installing MediaWiki takes between 10 and 30 minutes, and involves uploading/copying files, and running the installer script to configure the software - see
Installation.
Full instructions can be found in the
INSTALL file supplied in the distribution archive.
How do I install MediaWiki using a package?
Many Linux distributions provide MediaWiki in a packaged format for that distribution. The MediaWiki development team refers you to your Linux distribution for assistance with installing, configuring or using them. The individual communities & companies who maintain such packages should provide installation instructions.
Can I install more than one wiki on a server using MediaWiki?
It is possible to install more than one wiki on a server provided that:
- You use a different database for each wiki
OR
- You use a different database prefix for each wiki (for Postgres, you can achieve a similar effect by using different schemas and users)
For information on these options, see
$wgDBname and
$wgDBprefix respectively.
For information on setting up a wiki family, see
Manual:Wiki family.
For information on an alternative way of setting up more than one wiki using the same server, database and source, see
Steve Rumberg's (
archived version) excellent expose and additional comments from users.
Does MediaWiki work with safe_mode enabled?
Yes, but only to a limited degree. See
Safe mode.
Does MediaWiki require shell access?
Shell access (SSH access) is not required for installing MediaWiki, but it is
highly recommended. Without shell access, it may even be difficult for you to get a backup of your wiki, or to upgrade to a new version. Some maintenance tasks will not be possible at all without shell access.
How do I install extensions?
See
Manual:Extensions for information about installing extensions, as well as writing them. See the
Extension Matrix and the
Category:Extensions to find existing extensions.
How do I add extra namespaces?
To add a
namespace, modify your
LocalSettings.php file, and add namespaces via
$wgExtraNamespaces. You can add the following code to add a "Portal" namespace, and its corresponding discussion namespace:
$wgExtraNamespaces = array(100 => "Portal", 101 => "Portal_talk");
Note: Be sure to add underscores instead of spaces, such as in Portal_talk. Otherwise, the namespace will not be declared properly!
How do I enable uploading?
File uploads are an often-used feature of MediaWiki, but are disabled by default in all current release versions. To enable them, first make the upload directory (default images) writable by the web server (chmod 777 or allow the Apache user to write to it, etc.) then set
$wgEnableUploads to true in LocalSettings.php
(i.e. "$wgEnableUploads = true;"). See
Manual:Configuring file uploads for more information.
How do I enable embedded math formulas?
MediaWiki allows embedded math formulas via a helper program called texvc that uses LaTeX to render the formulas. See
Manual:Math for setup instructions.
How do I purge a cached page?
To purge a cached page, such as when making changes to the navigation bar, add &action=purge to the end of the page's dynamic URL.
e.g.
http://www.mediawiki.org/w/index.php...e&action=purge
or ?action=purge to the end of the page's short form URL:
e.g.
http://www.mediawiki.org/wiki/Main_Page?action=purge
See also:
Manualurge,
Manualarameters to index.php
How do I allow uploading of additional formats?
MediaWiki requires that allowed file upload formats are specified using the
$wgFileExtensions configuration directive. Usually this directive is situated in LocalSettings.php in the root of your MediaWiki installation.
For example, to allow uploading of PDF files, add the following to LocalSettings.php:
$wgFileExtensions[] = 'pdf';
Note: The syntax is different to allow uploading of more than one type of file. To do so, use an array as in the example below which will allow uploading of png, gif, jpg, jpeg, pdf, and txt files.
$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'pdf', 'txt' );
See
Manual:Configuring file uploads for more information.
"File is corrupt or has an invalid extension"
Some users have reported that after adding a file format to the allowed extensions list, an error is encountered. The text of the error is similar to the following:
The file is corrupt or has an incorrect extension. Please check the file and upload again. Possible solutions:
- Set the value of $wgMimeDetectorCommand, e.g. under Unix or Linux, this would be $wgMimeDetectorCommand = "file --brief --mime";
- Compile/install the fileinfo PHP extension
- Fedora - yum install php-pecl-Fileinfo
See
Manual:Mime type detection for more information.
Initial user was not created by installer
Sometimes, the installer fails to create the default user, or the user table is lost for some reason. There are a couple of options for solving this:
maintenance/createAndPromote.php
- Make sure AdminSettings.php is set up (see AdminSettings.sample)
- Execute maintenance/createAndPromote.php from the shell
This will create a new user and promote them to an administrator. For help, run the script with the parameter --help.
Alter the database
- Register a new account using the regular method (Special:UserLogin).
- Check the user ID in Specialreferences.
- Execute the following SQL statement against the database:
- For MediaWiki 1.5 and later:
INSERT INTO user_groups ( ug_user, ug_group ) VALUES ( <id>, 'bureaucrat' ), ( <id>, 'sysop' );
- For MediaWiki 1.4:
UPDATE user_rights SET ur_rights = 'sysop,bureaucrat' WHERE ur_user = <id>;
- For MediaWiki 1.3 and older:
UPDATE user SET user_rights = 'sysop,bureaucrat' WHERE user_id = <id>;
<id> above should be replaced with the appropriate user ID which you can see on the user's preference page
How do I reset a password?
You can use the maintenance/changePassword.php
maintenance script to reset a user's password.
You have to run the script from the command line. In other words, log into the server where your wiki is installed, then open a command prompt. Go to the installation directory, then go to the maintenance subdirectory. Run the following command:
php changePassword.php --user=someuser --password=somepass
Where obviously "somepass" is changed to the password you want to set and "someuser" is changed to the user name as it is listed in the table "user".
You can also use the old way, by modifying the database directly. Assuming that $wgPasswordSalt is set to true (the default), you can use the following SQL query for
MySQL:
UPDATE user SET user_password = MD5(CONCAT(user_id, '-',
MD5('somepass'))) WHERE user_name = 'someuser';
Where obviously "somepass" is changed to the password you want to set and "someuser" is changed to the user name as it is listed in the table "user".
Note: The user_id in the CONCAT string is a column name and is not meant to be replaced with 'someuser'
Note: If you obtain a 'dbname.user table does not exist' error, please check the
LocalSettings.php file, and double-check the value for the
$wgDBprefix variable. If that variable is not empty, try repeating the command, replacing $wgDBPrefix_user instead of user in the UPDATE clause of the SQL statement.
If using
PostGreSQL, use this query instead:
UPDATE mwuser SET user_password =
md5(user_id || '-' || md5('somepass')) WHERE user_name='someuser';
You can also try the
Password Reset extension.
How can I create interwiki links in my wiki?
DB expert answer
If the external wiki you are interested in is Wikipedia, and you wish to use the prefix "wp" to link to it (the prefix "wikipedia" is the default interwiki prefix for Wikipedia, see
Help:Interwiki linking for other defaults), run this SQL statement to modify the
interwiki table in your database:
INSERT INTO interwiki (iw_prefix, iw_url, iw_local, iw_trans) VALUES ('wp', 'http://en.wikipedia.org/wiki/$1', '0', '0');
The $1 indicates the article name on the external wiki.
Typical user answer
In a graphical SQL program (i.e. PhpMyAdmin), go to the
interwiki table. Choose the option to insert (a row). In the
iw_prefix field, enter your desired interwiki prefix. In the
iw_url field, enter the Base URL of the
external wiki plus the text "$1" as mentioned in the DB Expert Answer above.
iw_local and
iw_trans have default values of zero (0). You may leave them as zero.
For
more information, see
Help:Interwiki linking
Easy answer
Install the
Special:Interwiki extension. You can then add and remove interwiki entries through the Special:Interwiki special page.
How do I make my base URLs shorter? (i.e. /wiki/Article_Name as opposed to /w/index.php?title=Article_Name)
See
Manual:Short URL.
Is downloading and using all of MediaWiki.org free?
Yes, it is free in the sense of
Free software. See
Project:Copyrights for licensing issues regarding the written content of this site.
How do I administrate/manage user rights?
See
Manual:User rights and
Manual:User rights management for general information. See
Manualreventing access for methods and strategies for restricting access.
How do I stop anonymous users from editing any page?
- Set $wgGroupPermissions['*']['edit'] = false; at bottom of LocalSettings.php.
See
Manualreventing access#Restrict anonymous editing for more information.
How do I stop anonymous users from reading any page?
- Set $wgGroupPermissions['*']['read'] = false; at bottom of LocalSettings.php.
See also
Manual:$wgWhitelistRead. See
Manualreventing access#Restrict viewing of all pages for more information.
How do I restrict account creation?
- Set $wgGroupPermissions['*']['createaccount'] = false; at bottom of LocalSettings.php.
See
Manualreventing access#Restrict account creation for more information.
Upgrading
Generic instructions on the upgrade process can be found in the
UPGRADE file supplied with the software. See also
Manual:Upgrading.
How hard is it to upgrade?
If the only file you have modified is LocalSettings.php, and you are upgrading from 1.5 or later, the process is very simple. The amount of human work involved is only a few minutes. The database schema changes will take an amount of time proportional to the size of your database -- potentially hours for wikis with millions of pages, but for a more typical size of a few thousand pages, it is usually done in seconds.
Minor upgrades, within the same major version, say from 1.13.0 to 1.13.1, do not require any schema changes at all. You can just update the files.
Upgrading from 1.4 or earlier is potentially complicated because support for character sets other than UTF-8 was dropped, and the schema for storing bulk text changed. Please read the relevant section in the UPGRADE file.
Upgrading becomes difficult if you have modified our source code, and you don't want your changes to be overwritten. Tools such as
diff and
patch may be useful. There is also potential for trouble if you are using unmaintained extensions. Upgrade your extensions at the same time as you upgrade MediaWiki.
How do I upgrade from a really old version? In one step, or in several steps?
In one step, from your old version to the latest stable version. The vast majority of reports, as well as automated testing, indicate that doing it in one step works just fine.
If you have trouble believing this, read
this mailing list post.
Should I back up first?
Short answer: yes.
Long answer: it depends on a) how much you value your data, b) how hard it is to create a backup and c) how confident you are with MySQL maintenance and administration.
An upgrade failure may leave your database in an inconsistent state, in between two versions. It may move an important table to a temporary name and then fail before it recreates the table correctly. It may change a field definition to an incorrect data type. It is very rare for an upgrade to cause irreversible data loss. More often, data corruption occurs which can be reversed by a skilled administrator.
Recovery is often complex. Volunteers on the support forums are unlikely to be impressed if you neglect to make a backup and then need help to recover from upgrade-related corruption. A better outcome is if you can revert to your backup, and then
report the bug in the upgrade process which caused the corruption.
Can I keep my LocalSettings.php?
Yes, but you may have to make some minor changes. The format of LocalSettings.php is largely backwards compatible. Changes which break LocalSettings.php compatibility will be documented in the "configuration changes" section of the release notes.
Can my wiki stay online while it is upgrading?
Yes.
If you are upgrading between minor releases, all you need to do is update the source files.
If you are upgrading between major releases, the preferred procedure is as follows:
1. Unpack the new version of MediaWiki into a new directory
2. Prepare the new directory with a valid LocalSettings.php and copy any extensions over.
3. Enable read-only mode in LocalSettings.php of the old directory
$wgReadOnly = 'Upgrading to MediaWiki 1.14.0';
4. Run the upgrade script in the new directory.
5. Swap the old directory and the new directory.
Changing the interface
How do I change the logo?
The logo that appears in the top left of each page is determined by the
$wgLogo configuration line in the
LocalSettings.php file.
There are two ways to change the logo:
Upload a picture with your wiki and use that address. This allows the photo to be replaced easily, so you may want to protect the page if you use this method.
Then add the $wgLogo line to
LocalSettings.php, for example:
$wgLogo = '
http://www.example.com/wiki/images/6/62/photoname.jpg';
Or upload an image to your server by other means (such as FTP). Add the $wgLogo line to
LocalSettings.php, for example:
$wgLogo = "{$wgScriptPath}/photoname.jpg";
In this example, the photo is in the same folder as the LocalSettings.php file.
It is generally a good idea to place this at the end of LocalSettings.php, especially if you are using a variable such as $wgStylePath or $wgUploadPath.
Caution: Do not simply overwrite the default logo installed with MediaWiki (/skins/common/images/wiki.png); this file will be overwritten when you upgrade.
Tip: The logo image should be 135 x 135 pixels.
How do I edit the wiki's CSS?
You shouldn't edit the CSS files (such as main.css) directly, because it will make upgrading harder if you need to apply your customizations each time you upgrade the software. Instead you need to edit a wiki page called
MediaWiki:Common.css if you want to apply your CSS changes for all skins, or a wiki page called
MediaWiki:Monobook.css if you want to apply the customizations only for Monobook skin.
The content of MediaWiki:Common.css and MediaWiki:Monobook.css pages always override the default CSS styles specified in main.css.
How do I hide the left vertical navigation toolbar
In other words, how do you make the main content div take up 100% of the display, hiding the logo, toolbox, navigation and search engine?
To hide it permanently, put the following in
MediaWiki:Common.css:
#column-content { margin: 0 0 .6em 0; }
#content { margin: 2.8em 0 0 0; }
#p-logo, .generated-sidebar, #p-lang, #p-tb, #p-search { display:none; }
#p-cactions { left: .1em; }
To instead hide the toolbar when the user presses F11, enter this in your wiki's
MediaWiki:Common.js:
document.onkeydown = function( e ) {
if( e == null ) e = event
if( testKey( e, 122 ) ) { //F11
appendCSS('#column-content {margin: 0 0 .6em 0;} #content {margin: 2.8em 0 0 0;} #p-logo, .generated-sidebar, #p-lang, #p-tb, #p-search {display:none;} #p-cactions {left: .1em;} #footer {display:none;}');
return false;
}
}
function testKey( e, intKeyCode ) {
if( window.createPopup )
return e.keyCode == intKeyCode
else
return e.which == intKeyCode
}
How do I customize the logo in the top left corner? Can I?
The logo is a portlet block without a pBody section. It is identified by the p-logo id. The background image is specified by the
$wgLogo variable, which is defined in
DefaultSettings.php. This location is relative to the web server root and not the system root. Redefine this in
LocalSettings.php to change the image. If set wrong there will be no image on the page; check your web server error log and adjust accordingly. However the size of the p-logo will need to be big enough for the logo if it is not to be clipped. This is set in the stylesheet (main.css in Monobook), under the p-logo style, the default setting is:
#p-logo {
z-index: 3;
position: absolute; /*needed to use z-index */
top: 0;
left: 0;
height: 155px;
width: 12em;
overflow: visible;
}
How do I customize the URL of the logo in the top left corner when you click it?
By default, clicking the logo takes you to the main page. If you want to change which page is the main page, edit
MediaWiki:Mainpage.
To make the link go to any arbitrary URL, for Monobook skin, you'll need to edit MonoBook.php (in other words, you need to do a core hack) and find and replace <?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href'])?> with the URL of your choice and replace <?php $this->msg('mainpage') ?> with the desired link title.
Example to link to your Root: Replace
?>href="<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href'])?>" <?php
?>title="<?php $this->msg('mainpage') ?>"></a>
with
?>href="/" <?php
?>title="Root Page Name"></a>
Reducing the size of the logo
Note that a tag is on top of the logo so if you are trying to reduce the size of the logo's portlet you will also need to change the #p-logo a and #p-logo a:hover rules. The default setting for these is:
#p-logo a,
#p-logo a:hover {
display: block;
height: 200px;
width: 12.2em;
background-repeat: no-repeat;
background-position: 35% 50% !important;
text-decoration: none;
}
This simple customization will re-define the size of all of them at once...
#p-logo,
#p-logo a,
#p-logo a:hover {
height: 75px;
}
There is one more rule controlling the amount of space between the logo and first portlet in the side column - the padding on the top of #column-one. By default this is:
#column-one { padding-top: 160px; }
If you want to remove the logo completely, comment out the
$wgLogo variable. Then set the column-one padding to a small value, such as 21:
#column-one { padding-top: 21px; }
How do I change the icon in the browser's address line (favicon)?
- Simply upload your favicon.ico to the root of your domain/subdomain, make sure file name is in lower case and its name is favicon.ico
- Alternatively edit the $wgFavicon setting in LocalSettings.php and add $wgFavicon = "$wgScriptPath/path/to/your/favicon.ico";
See
Manual:$wgFavicon for more details.
Tip: The favicon image should be either 16 x 16 pixels or 32 x 32 pixels.
Rewrite Rule
If you are using a rewrite rule in .htaccess to remove "index.php" from the URL, you will also need to add an exception for .ico files. Simply add the following rule to your .htaccess:
RewriteRule .*\.ico$ - [L] This rule must appear
before the index.php rule.
Case sensitivity
When uploading the favicon file, be sure the filename is in lowercase. (That is, "favicon.ico", not "Favicon.ico".) A lot of servers (e.g., those on UNIX-like operating systems) will not be able to find the file unless its name is in lowercase.
How do I customize the navigation bar?
The contents of the navigation bar which appears to the left of each page using the Monobook skin are determined by the
MediaWiki:Sidebar page there on your wiki. For information on customising these, please see
Manual:Navigation bar.
How do I put a text message (sitenotice) on every page?
Put a text in the
MediaWiki:Sitenotice page. It will be displayed on top of every article page.
How do I change which page is the main page?
By default, MediaWiki looks for a page with the title
Main Page and serves this as the default page. This can be changed by altering the contents of
MediaWiki:Mainpage to point to a different title. If this does not change the 'Main Page' link included on the sidebar at install time, edit
MediaWiki:Sidebar.
How do I change the Main Page title?
Starting from 1.14, you can edit the
system message MediaWiki
agetitle-view-mainpage to change <title> of the main page.
[1].
How do I hide the main page title?
MediaWiki does not have a built-in option to hide the main page title (see
bug 6129). Instead you must use JavaScript or CSS.
MediaWiki version before 1.9, solution to hide the main page title
Before MediaWiki 1.9, you have two options:
Apply the patch
You can manually apply the patch from
r17119 to your copy of MediaWiki and use the solution for 1.9.
First replace or add the lines in three files in the correct place as
r17119 did:
- skins/monobook/Skin.php, add:
$a['class'] = 'ns-'.$wgTitle->getNamespace().''.($wgContLang->isRTL() ? "rtl" : "ltr").' page-'.Sanitizer::escapeId( $wgTitle->getPrefixedText() );
- includes/SkinTemplate.php, add:
$tpl->set( 'pageclass', 'page-'.Sanitizer::escapeId( $wgTitle->getPrefixedText() ) );
- includes/MonoBook.php replace:
class="<?php $this->text('nsclass') ?> <?php $this->text('dir') ?>">with:class="mediawiki <?php $this->text('nsclass') ?> <?php $this->text('dir') ?> <?php $this->text('pageclass') ?>"> Second follow the instructions in
#1.9 and above.
JavaScript solution
The following JavaScript may or may not work for your wiki (replace "Main Page" with the name of your main page if it differs). Add the code to your wiki's
MediaWiki:Common.js or MediaWiki:Monobook.js (Monobook.js for older wikis, Common.js for newer wikis):
var isMainPage = (document.title.substr(0, document.title.lastIndexOf(" - ")) == "Main Page");
var isDiff = (document.location.search &&
(document.location.search.indexOf("diff=") != -1 ||
document.location.search.indexOf("oldid=") != -1
)
);
if( isMainPage && !isDiff ) {
document.write('<style type="text/css">/*<![CDATA[*/ h1.firstHeading { display: none !important; } /*]]>*/</style>');
}
MediaWiki version 1.9+, solution to hide the main page title
In 1.9 and above (or with the modified files above), you can use
CSS to hide the main page title.
Add the following to the
MediaWiki:Monobook.css (if you're using Monobook; otherwise add this to
MediaWiki:Common.css to have it applied to all skins) on your wiki:
body.page-Main_Page h1.firstHeading { display:none; }
Alternatively, you can replace "Main_Page" with another name, but with spaces replaced by underscores _ .
Troubleshooting
If this doesn't work, look at the HTML source code to find the correct class to replace "page-Main_Page" with:
<body class="mediawiki ns-0 ltr page-Some_title">
If no such class exists, then you cannot use this feature. You may be using a custom or outdated skin.
Another option is to #REDIRECT from Main_Page to Our_Main_Page.
See also
Wikipedia:Main Page alternatives.
How can I hide the table of contents?
The table of contents (TOC) is automatically shown once there are four or more headings in the article. The are multiple ways to hide it.
For one pagePlace the magic word
__NOTOC__ into the page markup.For all pagesAdd the following rule to
MediaWiki:Common.css:
.toc, #toc { display: none; }
However, this is not the best solution, because the table of contents will be hidden even in those pages in which we want it to be displayed, by using the
magic words __FORCETOC__ or
__TOC__. A simpler and more efficient alternative is to edit the file
/includes/parser/Parser.php, altering in line 3427 the limit of 4 headings:
(($numMatches >= 4) || $this->mForceTocPosition);
to a higher value (e.g. 10). This way the table of contents will only be displayed in pages with 10 or more headings, OR in pages which contain one of the magic words
__FORCETOC__ or
__TOC__.Per userUsers can also opt to have the table of contents hidden. This is a user preference, set in
Specialreferences.
How do I change the interface text?
Interface text is altered using the MediaWiki namespace. For each deviation from the default in the site language there is a page MediaWiki:
Englishmessagename, and for each deviation from the default in each other language a page MediaWiki:
Englishmessagename/
languagecode. (Since release 1.9 there are no pages for messages equal to the default.). On creation of a page the edit box autofills with the default. When creating a page to override the default it is useful to first save the default version, to allow diffs with it. See also
Manual:System message.
How do I change the interface language?
To change the default interface language, alter the value of
$wgLanguageCode in LocalSettings.php, e.g.
$wgLanguageCode = "fr";
How can I prevent editing by anonymous users?
The recommended method is by changing the value of the
$wgGroupPermissions configuration option. Edit
LocalSettings.php and add the line:
$wgGroupPermissions['*']['edit'] = false;
For more information on using this option, see the
Preventing access page and
Manual:User rights.
How do I remove the article/edit etc tabs for users who are not logged in?
Edit [[MediaWiki:Monobook.css]] on your wiki, and add this:
#ca-edit { display: none; }
See the page source for the various #ca-* ids used in the content tabs.
Note: this will only work for MonoBook (the default skin), and doesn't actually stop people editing.
How do I add/remove tabs throughout my wiki?
For example, to remove the talk tab and then add a tab that always goes to the main page you would save this code in extensions/AR-Tabs.php:
<?php
if( !defined( 'MEDIAWIKI' ) ){
die( "This is not a valid entry point.\n" );
}
$wgHooks['SkinTemplateContentActions'][] = 'replaceTabs';
function replaceTabs( $content_actions ) {
unset( $content_actions['talk'] ); // only this to remove an action
$maintitle = Title::newFromText( wfMsgForContent( 'mainpage' ) );
$main_action['main'] = array(
'class' => false or 'selected', // if the tab should be highlighted
'text' => wfMsg( 'sitetitle' ), // what the tab says
'href' => $maintitle->getFullURL(), // where it links to
);
$content_actions = array_merge( $main_action, $content_actions ); // add a new action
return true;
}
and then add
require_once("extensions/AR-Tabs.php");
to the bottom of LocalSettings.php
How do I remove a tab on only one page?
This solution works in MediaWiki version 1.9 and above. In MediaWiki version 1.8 or below, first apply the above patch.
For example, to remove the Discussion (talk) page tab from the Main Page, on the
MediaWiki:Monobook.css page add:
.page-Main_Page #ca-talk { display: none !important; }
To modify
MediaWiki:Monobook.css you must have administrative privileges.
How do I remove a tab on all pages
This solution works in MediaWiki version 1.9 and above. In MediaWiki version 1.8 or below, first apply the above patch.
For example, to remove the Discussion (talk) page tab on all wikipages, on the
MediaWiki:Monobook.css page add:
#ca-talk { display:none!important; }
Other tabs to remove are
#ca-history and
#ca-viewsource. To modify
MediaWiki:Monobook.css you must have administrative privileges.
How do I hide the section edit links for users who are not logged in?
- The recommended method is by changing the value of the $wgDefaultUserOptions configuration option.
Edit LocalSettings.php and add the line:
$wgDefaultUserOptions ['editsection'] = false;
- Alternatively you could manually edit each skin (e.g. MonoBook.php) and add this before </head>:
<?php if(!$this->data['loggedin']) { ?>
<style>
#ca-edit { display: none; }
</style>
<?php } ?>
Replace #ca-edit with #ca-viewseource if you disabled editing for anonymous users. Use .editsection for older MW versions. If you want to hide the links for all users including logged in users, instead edit monobook/main.css ('
not recommended!) and add:
#ca-edit { display: none; }
Also see
How can I prevent editing by anonymous users?
How do I remove the "Talk for this IP" link at the top right when $wgDisableAnonTalk is true?
Set
$wgShowIPinHeader to false.
How do I remove the "Create an Account or Login" link at the top right of the screen?
In Monobook.php change this statement:
foreach($this->data['personal_urls'] as $key => $item) {
to:
foreach($this->data['personal_urls'] as $key => $item) if($this->data['loggedin']==1) {
How do I change the footer?
To add or remove items from the footer on your MediaWiki page, you must edit the skin.
For example: if you go in to MonoBook.php (located by default in the skins folder) you will find the following code:
$footerlinks = array(
'lastmod', 'viewcount', 'numberofwatchingusers', 'credits', 'copyright',
'privacy', 'about', 'disclaimer', 'tagline',
);
In the above you can simply add and remove items from the footer that you wish to appear in your footer. Remember the changes may not appear immediately because of
MediaWiki caches.
You can also customize the individual items by modifying certain pages or parameters:
See also:
Footer,
Manual:Skinning#Footer,
Manual:Configuration settings#Copyright
Line breaks in footer Edit
MediaWiki:Copyright and add <br /> tag before and after the actual text of the message.
How can I edit / remove the Powered by MediaWiki image in the footer?
You can hide the Powered by MediaWiki image by adding the following to your wiki's
MediaWiki:Common.css:
#f-poweredbyico { display: none; }
If you want to remove it completely, you could alter /skins/MonoBook.php, which contains the following code that makes the Powered by MediaWiki image appear in the footer:
<?php
if($this->data['poweredbyico']) { ?>
<div id="f-poweredbyico"><?php $this->html('poweredbyico') ?></div>
If you would like to remove this image completely, or edit the image, you must locate and edit poweredbyico. It is located in skins/common/images/ and the image is called poweredby_mediawiki_88x31.png.
If you're happy with the logo (or not) and simply want to change the destination link, the code is in
getPoweredBy() function of
includes\Skin.php. Just change the line
$img = '<a href="http://www.mediawiki.org/"><img src="'.$url.'" alt="Powered by MediaWiki" /></a>'; to whatever.
How can I change what the <title> of each page is? Where do I make changes?
Most of the text that you want to change, can be found in the namespace of MediaWiki.
In order to change titles, texts, announcements and the such, go to Special:Allmessages, where you will see the text associated with the pages you wish to change. You need to log in as an administrator (like the one you made when you installed) to edit the protected entries in the MediaWiki namespace.
If you want to change the title in your browser, you need to edit
MediaWikiagetitle. Go there and edit it just like you would any other page in your wiki.
In recent versions of MediaWiki,
MediaWikiagetitle is $1 - {{SITENAME}} by default. If {{SITENAME}} is producing the wrong text for you, you need to set $wgSitename in your LocalSettings.php.
If $wgSitename is correct in LocalSettings.php but {{SITENAME}} is still wrong, it may be that you're using a user-contributed language file which incorrectly sets $wgSitename to a transliteration of "Wikipedia". Edit the language file to correct this. For example, the Hebrew language file is at languages/LanguageHe.php in your wiki directory.
Don't forget to clear your browser cache after you fix it.
How do I make external links open in a new window?
See
Opening external links in a new window.
How can I suppress MediaWiki from formatting URLs, tags, etc?
Put "<nowiki>" tags around the URL or tag. Example:
svn co <nowiki>http://svn.example.com/myproject/</nowiki>
produces: svn co
http://svn.example.com/myproject/
How can I force users to preview before they save?
See
Manual:Force preview and
Extension:ForcePreview.
How do I add more buttons on the edit page?
For adding more toolbar buttons above the edit field, you can use JavaScript code to register them in mwCustomEditButtons in your
MediaWiki:Common.js. For example, a button for large text:
var button = {
"imageFile": "images/5/56/Button_big.png", // image to be shown on the button (may be a full URL too), 22x22 pixels
"speedTip": "big text", // text shown in a tooltip when hovering the mouse over the button
"tagOpen": "<big>", // the text to use to mark the beginning of the block
"tagClose": "</big>", // the text to use to mark the end of the block (if any)
"sampleText": "big text" // the sample text to place inside the block
};
mwCustomEditButtons.push(button);
How can I get more special characters or tags clickable on the edit page?
For adding more selectable special characters, etc, below the edit field, see
Extension:CharInsert.
Basic usage
How do I edit a page?
To edit a page, simply click the
edit link that appears on each page. Using the default MonoBook skin, this is in the form of a tab at the top of the page. A form will appear, containing the existing markup. When you have finished making modifications, click the
Save button to commit your changes.
See also: MetaWiki: Help:Editing
How do I create a new page?
There are several paths to creating a new page:
On some wikis, a failed search for a page will contain a link which allows you to edit that page.
See
Help:Starting a new page
How do I delete an old version of a page?
Old versions of page data are retained in the database and can be accessed via the page history features. This is useful for reviewing changes and correcting or reverting undesirable ones, but in some cases, administrators might want to make this information unavailable, for legal reasons, or to reduce the size of the database.
- Administrators can delete an old revision of a page by deleting the page, and then selectively undeleting revisions to be kept
- The Oversight extension (also known as HideRevision) can be used to move harmful revisions out of page histories
- For newer MediaWikis (1.14+), you can enable the core RevisionDelete feature that allows privileged users to remove single revisions from page histories
- The maintenance/deleteOldRevisions.php maintenance script can mass-delete all old revisions of pages and their associated text records.
- See also: Manual:Removing embarrassment.
Are there any editing tutorials available?
There are several editing tutorials available, mostly on Wikimedia sister projects, such as Wikipedia. There are also markup references, etc. available on
Meta.
How do I view the printable form of a page?
MediaWiki includes stylesheets which automatically style a page appropriately when it is printed; using the print or print preview function within your browser ought to render the page in a printable form.
You can also view this printable form using the
printable version link in the toolbox.
Wiki Importing
Importing from MediaWiki XML dumps
See
Manual:Importing XML dumps
Importing from other types of wiki software
Note: The following is directly copied from
old meta FAQ. It might need to be corrected.
There is some documentation about importing in the UPGRADE file distributed with MediaWiki.
To follow on from those, this is how at least one individual imported pages from usemod to MediaWiki:
Because MediaWiki does not automatically link to
CamelCase style links, you will need to add brackets [[ ]] to all your links. You can do this with the following:
First, obtain ImportStage1.txt (or whatever you want to call it) from the importUseModWiki.php script ( use > to pipe the output to a file )
Second, do
sed '/Importing/!s/\ [A-Z]\w*[a-z]\w*[A-Z]\w*[a-zA-Z]/\ \[\[&\]\] /g'
ImportStage1.txt > ImportStage2.txt
This should create proper links in place of your CamelCase links.
This doesn't work so well for SubPage links - someone care to fix?
Then,
sed 's/upload\:\w*\.\w*/http\:\/\/aberwiki\.org\/uploads\/& /g'
ImportStage2.txt > ImportStage3.txt
This fixes your upload links. Change the replace text so it fills in your url such as
http://www.yourwiki.org/uploads/filename
You are now ready to import ImportStage3.txt into your database with a command such as
mysql -u<mysqluser> -p<yourpass> <db name> < ImportStage3.txt
Note: If your importUseModWiki.php outputs an XML file instead of SQL statements, this probably means you have a rather new version of MediaWiki. In such a case, you case import the XML file -- see
Importing a Wikipedia database dump into MediaWiki, towards the bottom of the page ('Import XML'). Don't forget to rebuild all the tables -- that page also explains how to do that.
Importing from other types of files
Here are some info on importing from other types of files:
MediaWiki auto importing script
Taken from
wiki_import - MediaWiki auto import script:
Description
The script is designed to import a whole folder of files into MediaWiki, with the folder directory tree mapped as wiki category hierarchy.
Features
- economic, build wiki site from existing knowledge base collection without "double-entry"
- persistent, map folder directory tree as wiki category hierarchy
- sophisticated, import/handle all well-known file types automatically
- complete, cover every applicable scenario, even the case when you need to control access to individual wiki pages
- versatile, highly customizable
Quick Help
wiki_import.sh $ $Revision: 1.1 $
mediawiki automatic file import script
Usage: wiki_import.sh [OPTIONS]...
The script is designed to import a whole folder of files into mediawiki, with the folder directory tree mapped as wiki category hierarchy.
The specification of the file-to-import is passed from standard input.
Options:
-s, --sect=n the root category section of the wiki
of the imported article (mandatory)
-1, --header include standard header (category hierarchy path & notice)
-l, --link link to actual file on the web site
-f, --footer include standard footer (article category)
-R, --res[=p] add restricted tag in the footer
as '{{<Res Param|Root Category> Restricted}}'
(default=`$_opt_sect')
Configuration Options:
-p, --php=fn mediawiki import php script specification
-r, --root=n the root category name for the whole wiki site
-m, --max=n max_allowed_packet for mysqld to import
-u, --user=n wiki user used for the import
-a, --arch=p the root url that linked-to archive files based on
Examples:
echo ./path/to/file.ext | wiki_import.sh -1 -l -f -s 'Customer Support' -R
For the rest of details, check out
wiki_import.
Customising further
How can I allow use of HTML tags?
See
Manual:$wgRawHtml as well as
Manual:$wgGroupPermissions and
Manualreventing access.
Caution: This can be easily abused to attack users
See
Extension:SecureHTML and
Extension:HTMLets for ways to make this safer.
How can I allow uploading of HTML files?
See
Manual:Allowing HTML Uploads.
Caution: This can be easily abused to attack users
Why...?
…is the Help namespace empty?
We don't currently have a clean, internationalised set of help pages under a free license. A few developers are hoping to make this possible; however, the Help namespace currently ships in a blank state. You are free to add your own help pages, copy the
Public Domain help pages or copy certain of the items from
Meta, e.g. the user guide or
MediaWiki Handbook, these two collections being free to use under the
GNU Free Documentation License.
…are some of my images not showing up after an upgrade?
Several users have reported that, following an upgrade or a moving of their wiki, several images fail to be shown inline. The files exist, and the image description pages show a MIME type of unknown / unknown and, in some cases, a warning about potentially dangerous files.
To fix this, run the maintenance/rebuildImages.php script from the command line. This will set MIME information for each file in the database.
…are all PNG files not being turned into thumbnails?
After upgrading to a more recent version of PHP, it is possible a different MimeMagic.php function is being used to detect file MIME types, particularly the built-in PHP function mime_content_type, which fails to detect PNG files. Search the web for
mime_content_type png for information on fixing this bug at the PHP level, possibly by editing your magic.mime file.
See
here for more info.
…is a search for a short keyword giving no hits?
By default, MediaWiki uses MyISAM's fulltext matching functionality to allow searching page content. The default settings for this mean that words of less than four characters won't be indexed, so results won't be returned for those queries.
To alter this behaviour, MySQL needs to be reconfigured to index shorter terms, and MediaWiki's search index table needs to be repaired, to rebuild the indices.
…can't I download MediaWiki 1.15?
MediaWiki 1.15 is in a development state at present, and has not been packaged into a general release. The code can be
downloaded from Subversion if desired.
…doesn't this work? It works on Wikipedia!
Wikipedia and other Wikimedia web sites use the current version of the code in development; at present, this is MediaWiki 1.15alpha (r48811). Coupled with the use of several extensions, this means that functionality between these wikis and your particular setup may differ.
- To obtain the current development code, read download from SVN
- To check what version a Wikimedia wiki is running, as well as what extensions are installed, visit the Special:Version page for that wiki
…do I get a 403 Forbidden error after setting permissions on my Fedora system?
Fedora Core enables
SELinux by default. Instructions for setting SELinux permissions for MediaWiki
are available.
…do I get logged out constantly?
This is probably related to cookies or session data, for example a problem with PHP's session.save_path
[2] setting. See
Log in problems.
…is it a good idea to keep user accounts?
At many times you just want to remove a user account out of the wiki either because it belonged to a spammer account or you just feel like it. The appropriate choice is to block the account or rename it if needed. Here is why:
Do I just remove his row from the User table?
Rob Church posted the following regarding this issue on the mediawiki-l mailing list:
"If the user has made edits, then removing rows from the user table cause theoretical loss of referential integrity. Now, to be honest with you, I can't think of any conditions where this would cause an actual problem; "undefined behaviour" is the phrase we use.
What I'd suggest doing, to be on the safe side, is running a couple of quick updates against the database:
UPDATE revision SET rev_user = 0 WHERE rev_user = <current_user_id>UPDATE archive SET ar_user = 0 WHERE ar_user = <current_user_id> What this will do is cause MediaWiki to treat the revisions as having been made anonymously when generating things like page histories, which should eliminate any problems caused by these routines attempting to check user details from other tables.
If the user has caused log entries, i.e. rows in the logging table, or uploaded images, then the situation becomes trickier, as you'll have to start mopping up all the rows everywhere and it could become a bit of a mess, so if the user's done anything other than edit, I would strongly recommend just blocking them indefinitely.
If the username is offensive or undesirable, then you could consider renaming it using the
RenameUser extension."
Anti-spam
See
Manual:Combating spam for an overview of anti-spam measures.
Where do I get the spam blacklist from and how do I install it?
The
spam blacklist extension can be found in
Subversion, just like all other officially supported extensions. For installation and configuration instructions, consult the
README file and
extension page over here.
How do I use $wgSpamRegex to block more than one string?
$wgSpamRegex is a powerful filter for page content. Adding multiple items to the regex, however, can be awkward. Consider this snippet:
$wgSpamRegexLines[] = 'display\s*:\s*none';
$wgSpamRegexLines[] = 'overflow\s*:\s*auto';
[...]
$wgSpamRegex = '/(' . implode( '|', $wgSpamRegexLines ) . ')/i';
This example code allows convenient addition of additional items to the regex without fiddling about each time. It also demonstrates two popular filters, which block some of the most common spam attacks.
See also: Extension:SpamRegex
Where now?
I've found a bug or have a feature request. Where do I post it?
Bugs and feature requests should be posted on
MediaZilla, our implementation of
Bugzilla. Please search the database prior to posting, to avoid creating duplicate entries.
I'm getting a strange error. What now?
I have a question not answered here. Where do I go next?
If you've exhausted the FAQ above, please try the following:
Still no luck. Where can I ask for help?
Recommended reading