Extension:SubpageSortkey
|
Subpage Sortkey Release status: beta |
|||
|---|---|---|---|
| Description | change the default sortkey to have something to do with the subpages | ||
| MediaWiki | 1.18 | ||
| License | GPLv2 | ||
| Download |
Download snapshot (Git master)
Git [?]: repo summary • tree • code changes SVN [?]: checkout-url • tree • code changes |
||
|
|||
|
|||
|
Check usage (experimental) |
|||
Contents |
[edit] 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.
[edit] 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.
| 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) |
[edit] 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.
[edit] Download instructions
Git [?]: repo summary • tree • code changes
SVN [?]: checkout-url • tree • code changes
[edit] 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 updateCollations.php --force (important!)
