MediaWiki extensions manual
OOjs UI icon advanced-invert.svg
Release status: unmaintained
Implementation User interface
Description Allows a per-namespace skin
Author(s) Alexandre Emsenhuber (IAlextalk)
Latest version 2018-01-28
MediaWiki 1.25+
Database changes No
License GNU General Public License 2.0 or later
  • $wgSkinPerNamespaceOverrideLoggedIn
  • $wgSkinPerSpecialPage
  • $wgSkinPerNamespace
Quarterly downloads 3 (Ranked 166th)
Translate the SkinPerNamespace extension if it is available at translatewiki.net
Issues Open tasks · Report a bug

The SkinPerNamespace extension allows to specify a per-namespace skin that can be configured in $wgSkinPerNamespace, but this will also override users preferences, to avoid this you can set $wgSkinPerNamespaceOverrideLoggedIn to false.


  • Download and place the file(s) in a directory called SkinPerNamespace in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php :
    wfLoadExtension( 'SkinPerNamespace' );
  • Configure as required.
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.


You can configure this extension with the following variables:

array mapping namespaces index (i.e. namespaces numbers and not names) to a skin name. Use all lower case name for skin, like monobook, modern, ... otherwise it simply won't work. Example:
$wgSkinPerNamespace[NS_TALK] = 'timeless';
$wgSkinPerNamespace[NS_PROJECT] = 'monobook';
  Note: You can find the constants in includes/Defines.php.
skins for special pages, mapping canonical name (see SpecialPage::$mList in SpecialPage.php) to skin. This overrides $wgSkinPerNamespace[NS_SPECIAL]. Example:
$wgSkinPerSpecialPage['Search'] = 'vector';
$wgSkinPerSpecialPage['Recentchanges'] = 'modern';
if set to true (default value), it will also override the the skin for logged in users, to avoid this you can set it to false and $wgSkinPerNamespace will only apply to anonymous users.

See alsoEdit