Manual:名前空間
名前空間とは、同様の目的を持つページの集合体です。名前空間は、ウィキ内の情報を異なる種類ごとに区切るための仕組みと考えることができ、ウィキの主題に関する「本来の」コンテンツ(記事ページ)を、利用者のプロフィールやヘルプページなどの情報と分離して格納できます。
名前空間の接頭辞は、ページ名の最初の部分 (存在する場合) であり、そのページが属する名前空間を示します。この接頭辞は、残りのページ名とコロン (:) で区切られます。いわゆる「標準名前空間」には接頭辞はありません。
Every namespace has a number or index which the MediaWiki software uses to refer to the namespace instead of its name.
技術的な概要
Every page on a wiki has a unique title which may begin with a namespace prefix or not. Pages in different namespaces can otherwise share the same name (i.e., not counting their prefixes).
例:
| ページ名 | 名前空間 | コード | Page description |
|---|---|---|---|
API
|
0 | a page in the "main namespace" | |
Template:API
|
Template | 10 | a template that can be transcluded into other pages |
Manual:API
|
Manual | 100 | a page in our MediaWiki manual (which, in this case, redirects to a different page) |
Because the "main namespace" does not have a prefix, any page title having no prefix—or any page whose apparent prefix doesn't match any recognized namespace on the wiki (nor any interwiki/interlanguage prefix )—is interpreted as a page in the main namespace.
標準名前空間のページ名は、既存の名前空間の接頭辞に続いてコロン(:)が付く形式で始めることはできません。これは、そのような名前のページは、その名前空間の存在によってアクセス不能になってしまうためです。
(If this has happened as the result of the creation of a new namespace, the namespaceDupes.php maintenance script can be used to fix the problem.)
ページ名の一部である接頭辞を変更するだけで、名前空間を跨いでページを移動させることができます。
名前空間接頭辞は各言語に翻訳できます。また、名前空間には「別名」(ショートカットで有用) を設定することもできます (詳細は $wgNamespaceAliases を参照)。
名前空間には全て「標準名」があり、これは設定にかかわらずすべてのウィキにおいて機能します。
別名と標準名は、リンクを設けるときや検索を行うとき、ページ名を {{DISPLAYTITLE}} マジックワードを利用して整形する時に機能します。
あらゆる名前空間は名前空間番号を持っています。データベース内では、ページ名は名前空間番号とページ名の文字列に分割され、それぞれ page.page_namespace カラムと page.page_title カラムに格納されています。
メインの名前空間とトーク名前空間
- トークページの利用方法の説明については、Help:トークページ を参照してください。
メディアページと特別ページ以外の名前空間には議論名前空間(トークページ)があります。
トークページの番号は全てメインの名前空間の番号に1を足した数で、全て奇数になっています。
番号が偶数の整数なら主題名前空間です(注記:コンテンツ名前空間と混同しないでください)。
主題と議論の双対は {{SUBJECTPAGENAME}} 及び {{TALKPAGENAME}} のマジックワードを使って探索できます。
<body> タグが付いたトークページ名前空間は CSS クラスが ns-talk になり、書式設定に役立つはずです。
組み込みの名前空間
MediaWiki には 18 個の組み込みの名前空間があります:
- うち16個が「真の名前空間」で、番号は0〜15が割り振られています。記事とトークページがペアになって存在します。
- 残りの2個が「仮想名前空間」で、番号は-1と-2が割り振られています。それぞれ動的に生成された特殊なページと、ファイルへ直接繋がるリンクを生成するための別名として設けられました。これらの名前空間のページはデータベースに格納されている訳ではないので、トークページもなく、新たに作成したり削除したりもできません。
完全な一覧を以下の表に示します。
| ID | 名前 | 目的 | トーク | |
|---|---|---|---|---|
| 0 | (Main) | 標準名前空間 [1] | Talk | 1 |
| 2 | User | 利用者ページ [2] | User talk | 3 |
| 4 | Project | ウィキについての情報及び方針[3] | Project talk | 5 |
| 6 | File | メディア及びそれの解説ページ | File talk | 7 |
| 8 | MediaWiki | サイトのインターフェイス(JsやCss)のカスタマイズ[4] | MediaWiki talk | 9 |
| 10 | Template | テンプレート用名前空間 | Template talk | 11 |
| 12 | Help | ヘルプやサポートページ | Help talk | 13 |
| 14 | Category | カテゴリ及びそれの説明ページ | Category talk | 15 |
| -1 | Special | 特別ページ | N/A | |
| -2 | Media | メディア ファイルへの直接リンクの別名 | ||
名前空間ごとに名前から派生した定数もあり、すべて大文字で、スペースはアンダースコア(_)で置き換え、先頭に NS_ と付きます。
例えば、「利用者トーク」の定数は NS_USER_TALK です。
完全な一覧は 拡張機能の既定の名前空間 にまとめてあります。
- ↑ 標準名前空間には接頭辞がありません。
- ↑ 利用者のトークページを編集すると、その利用者に通知されます。
- ↑ 手動で設定しない限り
$wgMetaNamespaceで定義されます。既定値は$wgSitenameです。 - ↑ 'インターフェイス編集者' 権限を持つ利用者のみが編集できます。
カスタム名前空間
拡張機能およびサイト管理者は、ページを分類するための追加的な名前空間を定義できます。 概要については、Manual:カスタム名前空間の使用方法 を参照してください。
機能
Project や Help など一部の名前空間は、利便性のみのために存在しており、標準名前空間と比較しても追加的な機能はありません。
テンプレート名前空間のページは、参照読み込みの際に名前空間接頭辞を省略できます。
利用者名前空間のページは、利用者アカウントまたは IP アドレスと関連付けられます。利用者のトークページを変更すると、その利用者に自動的にメッセージで通知されます。
MediaWiki名前空間のページは言語ファイルにある標準のインターフェイスやメッセージを上書きすることができます。この名前空間は管理者とeditinterface権限を持つ利用者のみが編集できます。
カテゴリ名前空間とファイル名前空間のページは他の名前空間とは違った機能を持っています (詳細は Help:ファイルの管理 と Help:カテゴリ を参照)。 ファイルを移動できるのは「movefile」権限を持つ利用者です。 カテゴリ ページを移動できるのは「move-categorypages」権限を持つ利用者です。
議論名前空間のすべてのページには「コメントを投稿する」機能があります。
関連項目
- Help:名前空間 – 利用者向けの情報
- Extension default namespaces
サイト管理
拡張機能
- カテゴリ:名前空間の拡張機能
- Extension:NamespaceManager – 名前空間管理ツール
- Extension:BlueSpiceNamespaceManager – カスタム名前空間を作成できるようにします。
- Extension:SpecialNamespaces – Extension:Interwiki の修正版で、特別な名前空間を生成できます。
- Extension:Lockdown – 名前空間への観覧および編集を制御する
- Extension:SkinPerNamespace – 専用の外装 (css) を各名前空間に適用するためのツール。
拡張機能の開発者向け
- Manual:カスタム名前空間の使用方法
- 拡張機能によって登録されたカスタム名前空間の一覧 . ほかの名前空間を知りたい場合はこちらもご覧ください。
- クラス
- Manual:MWNamespace.php 、MWNamespaceクラスを含む (1.39 で除去)
- フック
- Manual:Hooks/CanonicalNamespaces – カスタム名前空間を追加したり、既定値を変更したりします。
- Manual:Hooks/NamespaceIsMovable – 名前空間内でページを移動できるかどうかを判断します。
- Manual:Hooks/SearchableNamespaces – 検索可能な名前空間を変更します。
- Manual:Hooks/LanguageGetNamespaces – 名前空間にカスタム順序を設定したり、名前空間を除去したりします。
- Manual:Hooks/PrefixSearchExtractNamespace – コアが検索文字列から名前空間を抽出できなかった場合に呼び出され、拡張機能が名前空間を試みる機会を提供します。