Extension:NamespacePaths

MediaWiki extensions manual
NamespacePaths
Release status: stable
Description Allows custom article paths to be mapped to namespaces of the wiki
Author(s) Daniel Friesen @ Redwerks (Dantmantalk)
Latest version 1.2.0 (2022-10-07)
MediaWiki 1.35+
Database changes No
License GNU General Public License 2.0 or later
Download
$wgNamespacePaths
Quarterly downloads 1 (Ranked 159th)
Translate the NamespacePaths extension if it is available at translatewiki.net

The NamespacePaths extension extends custom article paths to allow namespaces to be mapped to extra paths separate from the article path. For example mapping the help namespace to /help/$1 so pages like "Help:Contents" go to /help/Contents.

Installation edit

  • Download and place the file(s) in a directory called NamespacePaths in your extensions/ folder.
  • Add the following code at the bottom of your LocalSettings.php file:
    wfLoadExtension( 'NamespacePaths' );
    
  1. Configure the $wgNamespacePaths with the paths you want to use for namespaces, the key is the namespace id (you can use the NS_ constants), and the value is a $wgArticlePath style string like "/help/$1".
  2. Configure your webserver to pass the extra paths to MediaWiki. Consult the short URL documentation you set the article paths for your wiki and extend it to map the extra paths to "index.php".
Note: You don't want to try mapping things to ⁄index.php?title=$1, doing so will break the paths. If you just make sure that ⁄index.php is run for these extra article paths as long as your webserver sets REQUEST_URI correctly the extension will take it from there and extract the correct title on it's own.
  •   Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.

To users running MediaWiki 1.39 or earlier:

The instructions above describe the new way of installing this extension using wfLoadExtension(). If you need to install this extension on these earlier versions (MediaWiki 1.39 and earlier), instead of wfLoadExtension( 'NamespacePaths' );, you need to use:

require_once "$IP/extensions/NamespacePaths/NamespacePaths.php";