Extension:SubpageSortkey

Category:Extensions without an imageCategory:Extensions with invalid or missing typeCategory:Extensions without a compatibility policyCategory:GPL licensed extensions
MediaWiki extensions manual
Subpage Sortkey
Release status: stableCategory:Stable extensions
Description change the default sortkey to have something to do with the subpages
Author(s) Brian Wolff (bawolfftalk)
Latest version 0.2.0
MediaWiki 1.18Category:Extensions with manual MediaWiki version
License GNU General Public License 2.0 or later
Download Category:Extensions in Wikimedia version control
  • $wgSubpageSortkeyByNamespace
  • $wgSubpageSortkeyDefault
  • $wgSubpageSortkeyIfNoSubpageUseFullName
Quarterly downloads 0
Translate the SubpageSortkey extension if it is available at translatewiki.net
Issues Open tasks · Report a bug
Category:All extensions

What can this extension do?

This extension changes the default sortkey from the full page name, to something involving the subpage structure of the page name. For example it can be configured to make Foo/bar/baz sort under bar/baz or baz/Foo or baz, etc.

Usage

This has a config option ($wgSubpageSortkeyDefault) which contains a bunch of comma separated numbers and ranges to determine what parts of the page title will be used for the default sortkey. 0 represents the base page name, 1 represents the first subpage, etc. Negative numbers count backwards; -1 is the last subpage-part of the title. ranges are denoted with .. - aka 2..4 is the same as 2,3,4. The second number in the range is optional, and negative ranges are slightly weird (second number is not inclusive). This is easiest explained in examples:

  • $wgSubpageSortkeyDefault = '1,0,2'; will sort the page 0/1/2/3/4 under 1/0/2
  • $wgSubpageSortkeyDefault = '2,0..3'; will sort the page 0/1/2/3/4 under 2/0/1/2/3
  • $wgSubpageSortkeyDefault = '-1,0'; will sort the page 0/1/2/3/4 under 4/0
  • $wgSubpageSortkeyDefault = '1..'; will sort the page 0/1/2/3/4 under 1/2/3/4
  • $wgSubpageSortkeyDefault = '-4..-1'; will sort the page 0/1/2/3/4 under 1/2/3 (not under 1/2/3/4)
  • $wgSubpageSortkeyDefault = '-4..'; will sort the page 0/1/2/3/4 under 1/2/3/4

You can also customize the default sortkey per namespace with $wgSubpageSortkeyByNamespace. Example: $wgSubpageSortkeyByNamespace[NS_TALK] = '-1';

$wgSubpageSortkeyIfNoSubpageUseFullName can be used to control what happens if the subpage sorting comes up with an empty string (aka $wgSubpageSortkeyByNamespace = '2'; on a page with no subpages) Setting it to true (default) means it will use the page's title as the sortkey. Setting to false means it will use the empty string.

Warning Warning: You need to run the updateCollation.php maintenance script with the --force option every time you change this extensions configuration (or if you remove the extension)

Other details

$wgSubpageSortkeyIfNoSubpageUseFullName can be used to control what happens if the subpage sorting comes up with an empty string (aka $wgSubpageSortkeyByNamespace = '2'; on a page with no subpages) Setting it to true (default) means it will use the page's title as the sortkey. Setting to false means it will use the empty string.

The full page name (minus the namespace name) will be used as a tie-breaker in sorting. You can still use {{DEFAULTSORT:foo}} to override this extension.

This extension will only operate on namespaces with subpages enabled See Manual:$wgNamespacesWithSubpages for details on how to enable subpages in a namespace

Download instructions

Category:Extensions in Wikimedia version control

Installation

To install this extension, add the following to LocalSettings.php:

require_once("$IP/extensions/SubpageSortkey/SubpageSortkey.php");
$wgSubpageSortkeyDefault = '-1';
$wgSubpageSortkeyByNamespace[NS_TALK] = '2..4';

And then run the maintenance script updateCollation.php --force (important!)

As of MW 1.39, it seems that this extension must be loaded with

wfLoadExtension( 'SubpageSortkey' );

See also

Category:Extensions used on Wikimedia#SubpageSortkey Category:Category extensions Category:Subpage extensions
Category:All extensions Category:Category extensions Category:Extensions in Wikimedia version control Category:Extensions used on Wikimedia Category:Extensions with invalid or missing type Category:Extensions with manual MediaWiki version Category:Extensions without a compatibility policy Category:Extensions without an image Category:GPL licensed extensions Category:GetDefaultSortkey extensions Category:Stable extensions Category:Subpage extensions