MediaWikiの基本と応用をサクッと紹介。
基本
メインページを違う名前に変更する
MediaWiki:Mainpage
を開き、「メインページ」の文字列を新ページ名に変更する。
メインページ
を開き、内容を#REDIRECT [[新ページ名]]
に書き換える。
サイドバーを編集する
MediaWiki:Sidebar
を編集する
スタイルシートを変更したい
MediaWiki:Common.css
またはMediaWiki:Vector.css(MediaWiki:<スキンID>)
を編集する。
Javascriptを追加したい
MediaWiki:Common.js
を編集する。
※複雑で巨大なスクリプトはcssも同時に設定できる拡張機能 Gadgetsを利用するほうがよい。
略称や別名で目的のページを開くようにする
リダイレクトページを利用する。
略称のページ名を新規作成して#REDIRECT [[目的ページ名]]
で保存する。
別のページをインクルードする
テンプレート呼び出しと同じ書き方で先頭にコロンをつける。
{{:ページ名}}
インストールしたスキンをユーザー全員のデフォルトにしたい
スキンをインストール後、まず「個人設定」-「表示」タブ で「外装」とのところで目的のスキンを有効にします。
スキンが変更されたら、ブラウザのデバッグコンソールにmw.config.get('skin')
と打ち込んでEnterすると、スキンID
が得られます。
LocalSettings.php
の$wgDefaultSkin
を検索し、新しいスキンIDに変更します。
$wgDefaultSkin = "スキンID";
編集画面の注意書きを変更したい
MediaWiki:copyrightwarning
、MediaWiki:copyrightwarning2
を編集する。
アップロード画面の注意書きを変更したい
画面下のライセンス表示を変更したい
ページ上部に告知文を表示する
方法 1
MediaWiki:Sitenotice
を「-」以外に編集します。
ユーザーがメッセージを読んだ後に非表示できるようにするには、拡張機能 DismissableSiteNotice を使用します。
MediaWiki:Sitenotice_id
を変更することでユーザーが非表示にしたメッセージを再度表示させることができます。
非ログインユーザーのみに表示するMediaWiki:Anonnotice
もあります。ただしこちらはDismissableSiteNoticeが有効の場合でも[非表示]ボタンを表示しません。
方法 2
拡張機能 CentralNotice を使用する。
期間指定やアイコン、表示するユーザーなど、細かい設定が可能な特別ページSpecial:CentralNotice
を追加します。
ただし大手のWikiポータルでは運営がわが使用しており、Wikiの管理者には権限が与えられていない場合があります。
応用
テンプレートの機能を拡張したい
- 拡張機能 ParserFunctions - 条件分岐や計算など様々な機能を追加する。参照:Help:Extension:ParserFunctions/ja
Wikipediaみたいなインフォボックスを追加したい
Fandomで標準となっている拡張機能 PortableInfoboxがおすすめ。
Wikipediaの書式よりもシンプルで、導入も簡単。
別途、拡張機能 TabberNeueを追加するとFandomのように画像を切り替えたりすることもできる。
WikipediaやMediaWiki.orgなどのテンプレートをインポートしたい
Special:Import
を使う。
- https://en.wikipedia.org/wiki/Special:Export
-
https://www.mediawiki.org/wiki/Special:Export
これらのページから欲しいページのダンプをダウンロードして自分のWikiにインポートすると良い。
ただし、cssは別途コピペする必要があるので足りないcssはMediaWiki:Common.css
などから探す必要がある。
編集画面を便利にしたい
- 拡張機能 CodeEditor - JavaScript/CSS の構文ハイライト機能付きのページ編集。
- 拡張機能 CodeMirror - ウィキテキストエディターに構文強調の機能を追加する。
- 拡張機能 VisualEditor - 見た目そのままで編集できるヴィジュアルエディターを追加する。
- 拡張機能 WikiEditor - 拡張可能なウィキテキスト編集インターフェイスと多数の機能モジュールを提供する。
- 拡張機能 TemplateWizard - ビジュアルエディタにテンプレートの追加機能を追加する。
「新規ページの作成」「新規リダイレクトの作成」ページを導入する
拡張機能 CreatePageUw、拡張機能 CreateRedirectを追加する。
それぞれ便利な特別ページが追加されます。
Special:CreatePage
Special:CreateRedirect
編集画面から画像をドラッグアンドドロップでアップロードできるようにする
拡張機能 MsUploadを利用する。
リンクにカーソルを合わせるとポップアップする機能
「ヘルプ」名前空間や「プロジェクト」名前空間のページにもポップアップを有効にさせたい場合は、以下のようにそれらのページを記事ページ扱いにするように変更します。
$wgContentNamespaces = [ NS_MAIN, NS_HELP, NS_PROJECT, NS_CUSTOMNAMESPACE ];
<ref>...</ref>の部分にカーソルを合わせるとポップアップする機能
最新の拡張機能 Popupsではリファレンスポップアップ機能が標準で追加されました。$wgPopupsReferencePreviews
を有効にすると適用されます。
以下の内容は古い情報となります。
拡張機能 Cite + ガジェットのReference Tooltips
常にポップアップを有効化させたい場合、以下のように一部コメントアウトさせるとポップアップを強制させることができます。
テンプレートにプレビュー機能を追加したい
拡張機能 TemplateSandboxを使う。
このプレビュー機能を有効にする名前空間IDを追加するには以下のように設定する。デフォルトはNS_TEMPLATE
のみ。
$wgTemplateSandboxEditNamespaces = [
8, // NS_MEDIAWIKI
10, // NS_TEMPLATE
828 // NS_MODULE
];
特定のテンプレートやページをインクルードしているページを知る方法
Special:WhatLinksHere
を使う
MSUploadのデフォルトコメントを変更する
MediaWiki:Msu-comment
を書き換える。
「MSUpload」となっているのでこれを変更する。
テンプレート用のcssをいちいちCommon.cssに追加するのが面倒
拡張機能 TemplateStyles+拡張機能 TemplateStylesExtenderを使用する。
スタイルを適用するだけのテンプレートも作成できる優れもの。
アップロードしたビデオや音声ファイルを再生するには
動画サイトのプレイヤーを埋め込みたい
数式を使いたい
FontAwesomeのアイコンを使いたい
Discordのガジェットを使いたい
Fandom Devs - DiscordIntegratorを使う。
ただしFandomのものは実装がやや難しい
その他のMediaWikiでは こちら の方法が優しい。
トラブルシューティング
コピーしてきたテンプレートが動かない
- Luaモジュールが使用されている可能性がある → 拡張機能 Scribuntoを追加する。
cssのbackground-imageが表示できない
セキュリティのためurlの中身を外部URLにすると無視されます。
Wiki上の画像を使用する場合は、Special:FilePath
で実URLを調べてそのURLを使いましょう。
TemplateStylesではbodyやサイドバーなど記事内以外の部分のスタイルは変更できません。
TemplateStyles用のcss保存時にエラーが表示される場合は拡張機能 TemplateStylesExtenderを有効にするとエラーにならなくなります。
どうしても一部のページの背景にスタイルを適用したい場合は{{#css:}}
というパーサー関数を追加する拡張機能 CSSを使ったほうがいいでしょう。
JavaScriptがエラーになる
MediaWikiのJavascriptにはLinter制限があり、ES6(ECMAScript2015)までの構文しか許可されていません。
let
や export
、class
などを使用していませんか?
上級者向け
別のMediaWikiサイトに使用されている拡張機能が知りたい
そのWikiのSpecial:Version
を開いてみましょう。
別のMediaWikiサイトに使用されているガジェットが知りたい
そのWikiのSpecial:Gadgets
かMediaWiki:Gadgets-definition
を開いてみましょう。