Help:ChangeContentModel
注意: このページを編集すると、編集内容が CC0 のもとで公開されることに同意したと見なされます。詳細はパブリック・ドメインのヘルプ ページを参照してください。 |
コンテンツモデルとハンドラ |
---|
MediaWiki ではウィキテキスト以外のコンテンツの種類をページに設定できます。 JavaScript、CSS、JSONおよびプレーンテキストのサポートを内蔵して提供します。 拡張機能は MediaWiki のコンテンツハンドラの仕組みを使って新規のコンテンツモデルを追加し、異なる形式を受け入れたり、レンダリングや保管や編集の方法を制御できます。 |
概要 |
使用法 |
構成設定 |
支援と開発
|
Special:ChangeContentModel は、あるページのコンテンツ モデルを変更するために使用されます。
コンテンツ モデルは、とても大雑把に言えば、ウィキ上の指定されたページの形式や型です。
既定ではページのコンテンツ モデルは ウィキテキスト です。これはウィキのマークアップで使用されるリッチ テキスト形式です。
ウィキメディアのプロジェクト群で使用されるコンテンツ モデルにはコードを格納する css と javascript、ウィキデータのエントリ用の wikibase-item、ウィキメディア・コモンズでウィキ ラブ モニュメントのようなキャンペーンをアップロードするための Campaign などがあります。
The default content models are "CSS" and "JavaScript" for user namespace pages whose titles end with .css
and .js
respectively, and with Extension:TemplateStyles installed, it is "Sanitized CSS" in the template name space.
コンテンツ モデルの一覧はcontent handlersで利用できます。
より技術的な情報は Manual:ContentHandler で利用できます。
すべての操作は Special:Log/contentmodel (コンテンツモデルの変更) に記録され、必要に応じて変更を元に戻す便利な「差し戻し」リンクが付いています。
コンテンツ モデルを変更するには、利用者が editcontentmodel
権限を持っている必要があります。
On Wikimedia projects this permission is granted via user groups: to sysops, interface editors and - on some projects - template editors.
背景
従来は、利用者が MediaWiki で作成できるページの型はウィキテキストのページ (ウィキテキスト マークアップで記述されたリッチテキストの文書) のみでした。 これはウィキペディアで百科事典項目を記述するためには満足のいくものでしたが、ソースコードのブロックや構造化データ コンテンツや複雑なワークフローなど他の型のコンテンツには不十分でした。
2012年のウィキデータ プロジェクト (とウィキ ベースの拡張機能) の到来と共に、ウィキテキスト文書以外のページ作成が可能な ContentHandler ブランチが開発されました。 As of MediaWiki 1.21, ContentHandler is a part of the core MediaWiki software.
共通のコンテンツ モデルにはソース コードの保存と表示専用ものも含まれますが、個別の編集用インターフェイス作成にも使用できます。 一例として特定のページのコンテンツ構造は、いくつものテンプレートを無秩序に組み合わせて指定する代わりに、使用するデータを JSON など構造化された書式に書き込んで保存しておき、それをもとに MediaWiki 拡張機能を書くと、個別の編集用インターフェイスを構成できます。 この取り組み方は MassMessage では送信先ページの一覧作りに、CollaborationKit ではウィキプロジェクト群の編成に利用されています。 ページ作成にあたり、それぞれの拡張機能特有のワークフローがあるものの、Special:ChangeContentModel を使用することもできます。
ページ単位でコンテンツモデルを設定する代わりに、特定の名前空間の既定の設定を指定することができます。 例えば、Module 名前空間の既定のコンテンツ モデルは ScribuntoContent です。 同様に、指定された名前空間で特定のコンテンツモデル のみ が使用されるように強制することもできます。ScribuntoContent は Module 名前空間 のみ で使用できます。
ページの現在のコンテンツ・モデルの表示
ページの現在のコンテンツモデルを表示するには、サイドバーのツールボックスの「ページ情報」をクリックします。
URL に ?action=info
を追加して、同じページを得ることもできます。
ページのコンテンツ モデルの変更
Special:ChangeContentModelページに移動し(または「ページ情報」ページの「変更」リンクをたどり)、変更するページ名を入力します。 既定とは異なるコンテンツ モデルを使用する新しいページを作成する場合は、存在しないページにすることができます。 次に、変更するコンテンツ モデルを選択します。 「変更」をクリックして変更を加えます。
注意点として、なんでも変換できるわけではありません。
既存のページを変換対象に選んでも、MediaWiki ソフトウェアがそのページのコンテンツを変換し直す方法を解析できなかった場合は、コンテンツモデルは変換されずエラーメッセージを表示します。
この状態の対策は、旧版のページをアーカイブしておき、新しいコンテンツ モデルを利用した新しいページを作成するよう推奨されます。
例えばまず Project:Foo
を Project:Foo/old
に改名、続いて Special:ChangeContentModel を利用して新規の Project:Foo
を作成するという手順です。
可能な限り、新規のページに Project:Foo/old
へのリンクを書き込みます。
変更の取り消し
コンテンツ モデルの変更はすべてご利用のウィキの Special:Log/contentmodel に記録しています。 変更を取り消すには、記録の該当する記録項目に移動して、「差し戻し」をクリックします。 要点をあらかじめ記述した要約欄が表示されます。「変更」を押すと巻き戻します。 ページの変更履歴を見て、最新の編集によりコンテンツモデルが変更されたなら、取り消して変更前にことができます。 または巻き戻し機能でもコンテンツ モデルの変更をなかったことにできます。
ただし、この方法は状況によっては有効ではなく、特にページのコンテンツモデルの変更後にページが編集され、元のコンテンツモデルとの対応が取れなくなった場合に当てはまります。 この事態の対処は、対応を損なった編集を差し戻す必要があります。 代替策として、ページの旧版をアーカイブしてから、コンテンツモデルの変更をやり直す方法があります。 理想としてはコンテンツモデルの変更は回数が少なく間隔も開いた方が良いです。 ほとんどの状況ではコンテンツモデルの変更は1回で充分です。