機能: MediaWikiの名前空間とカスタム名前空間の追加

develop/MediaWiki
概要

前回: 拡張: MediaWikiのGoogle Analytics追跡拡張機能GTag | GNU social JP Web

MediaWikiでメモしていて、例えば業務メモなど秘匿性の高い情報など一般公開したくないページを作りたくなりました。その際に、名前空間を分けて名前空間単位で公開・非公開にできると知りました。

その前段階として、MediaWikiでのカスタム名前空間の追加方法を調査したので紹介します (Manual:Namespace – MediaWikiManual:Using custom namespaces – MediaWiki)。

MediaWikiのページには名前空間があります。名前空間はある同じ目的での使用を意図したページの集合体です。例えば、利用者ページや、ヘルプページなどが区別されています。名前空間は接頭辞としてページ名に含んでおり: (コロン) で区切ります。

なお、標準名前空間には (Main) には接頭辞がないです。また、メディアと特別ページ以外の名前空間には、議論名前空間 (トークページ) があります。トークページの番号は全てメインの名前空間に+1した奇数になっています。

MediaWikiには以下の18の組み込みの名前区間があります。

ID名前目的トークID
0(Main)記事の実態。Talk1
2User利用者ページ。User talk3
4Projectウィキについての情報。Project talk5
6Fileメディアの解説ページFile talk7
8MediaWikiサイトのインターフェイスのカスタマイズMediaWiki talk9
10Templateテンプレート ページTemplate talk11
12Helpヘルプ ページHelp talk13
14Categoryカテゴリの説明ページCategory talk15
-1Special特別ページを保持する

-2Mediaメディアファイルへの直接リンクの別名

組み込み名前空間は共通なので覚えておくと便利です。

カスタム名前空間

組み込みの名前空間に加えて、カスタムの名前空間も追加できます。

名前空間の追加には、LocalSettings.phpの$wgExtraNamespacesグローバル変数に追加して登録します。名前空間はこの配列内で一意のIDが必要です。最大32767までの数値を使用でき、システム管理者用に確保されているのは3000から4999までの数字です。偶数がメインで、奇数は直前の議論の名前空間です。名前空間にはスペースが使えません。代わりに_を使います。

例えば以下のようにして追加します。

// 追加の名前空間の定数を定義する。
define("NS_FOO", 3000); // これは必ず偶数でなければならない。
define("NS_FOO_TALK", 3001); // これは、その次の奇数の整数でなければならない。

// 名前空間を追加する。
$wgExtraNamespaces[NS_FOO] = "Foo";
$wgExtraNamespaces[NS_FOO_TALK] = "Foo_talk"; // 名前空間名に含まれるアンダースコアに注意。

上記でカスタム名前空間Fooが追加されました。Foo:BarのようにしてFooの名前空間のページが作成可能になります。

なお、カスタム名前空間にビジュアルエディター (VisualEditor/GUI) は標準で未対応です。カスタム名前空間のページ編集でビジュアルエディターを使いたい場合、

残り2408文字。続きはSilver/Gold会員限定。

Free=0/Bronze=220/Silver=1100/Gold=1980円。

会員登録 (About Member)

Comments

Ads Blocker Image Powered by Code Help Pro

広告ブロッカー検知/Ads Blocker Detected

このサイトは会費と広告で運営されています。[Bronze=月220円以上に登録] するか、広告ブロッカーを無効にしてください。

This site is operated by membership and advertise. Please [register at least Bronze=220 JPY/month], or disable ads blocker.

Copied title and URL