2022年最新のMediaWikiでinfoboxを使えるようにする

この記事には広告を含む場合があります。記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。

MediaWikiでWikipediaと同様のinfoboxを使えるようにしたいと思います。

MediaWikiは初期状態だとinfoboxが使えません。

各サイトの情報が古く、最新版のMediaWikiでの手順を検証しました。

本記事のMediaWikiのバージョンは「1.38.2」です。

レンタルサーバにはmixhostを使っています。

英語版ではなく日本版のinfoboxです。

infoboxとは

Wikipediaで記事を見ていると画像の赤枠のような概要を要約した表を記事冒頭で目にしたことがあると思います。

これがinfoboxです。

手早く主題の情報を得るためであり、たとえば会社情報ならばどの会社でも記載するべき情報をフォーマット化しておくことができます。

公式サイトの手順は2016年で古い

https://www.mediawiki.org/wiki/Manual:Importing_Wikipedia_infoboxes_tutorial

上記リンクにinfoboxをMediaWikiで使うための手順が記載されていますが2016年以降編集されておらず古い情報とのことです。

そのため、2022年時点で必要な手順を今回私が試してみたということです。

注意喚起の記述

必要な拡張機能

どのサイトをみても以下の拡張機能をインストールすると書いてありました。

  • Extension:ParserFunctions
  • Extension:Scribunto
  • Extension:TemplateStyles

このうち’TemplateStyles’以外の拡張機能はMediaWiki1.38.2にはすでに内包されています。

よって、インストール作業は不要で拡張機能を有効化するだけで大丈夫です。

TemplateStylesのダウンロード

インストールされていない「TemplateStyles」だけはここからダウンロードして解凍後にextensディレクトリにFTPでアップロードしましょう。

拡張機能を有効化する

先ほど述べた3つの拡張機能を有効化していきます。

LocalSettings.php
# ParserFunctionsの有効化
wfLoadExtension( 'ParserFunctions' );
# 以下2行Scribuntoの有効化
wfLoadExtension( 'Scribunto' );
$wgScribuntoDefaultEngine = 'luastandalone';
# TemplateStylesの有効化
wfLoadExtension (  'TemplateStyles'  );

ライブラリへ実行権限の付与

次に以下のファイルのパーミッションを644→777へ変更し実行権限を付与します。

/extensions/Scribunto/includes/engines/LuaStandalone/binaries/lua5_1_5_linux_64_generic/lua

CSSのインポート

CSSは基本のインフォボックス テンプレート自体を含め、ほとんどのインフォボックス テンプレートに必要とのことらしいので編集していきます。

インストールしたMediaWikiのCSSファイルを編集するには以下のURLにアクセスします。

「https://ドメイン/wiki/MediaWiki:Common.css」です。(URLの前半部分は各自のインストール先に読み替え前提)

アクセスするとインストール直後の私のMediaWikiにはまだCSSの記述が何もない状態でした。

タブのソースを編集を押します。

すると編集が可能になります。

編集する内容は以下の日本版のMediaWikiのCSSです。ここにアクセスしてCSSを全部自分のサイトのCSSへコピペします。

https://ja.wikipedia.org/w/index.php?title=MediaWiki:Common.css

コピペして自分のサイトのCSSへ保存しました。

Indoboxのテンプレートとモジュールをエクスポート

このページにアクセスしてテンプレートをダウンロードします。

https://ja.wikipedia.org/wiki/%E7%89%B9%E5%88%A5:%E3%83%87%E3%83%BC%E3%82%BF%E6%9B%B8%E3%81%8D%E5%87%BA%E3%81%97

シンプルなinfoboxならば以下4つを「手動でページを追加」の欄に記載してダウンロードします。

  • Template:Infobox
  • Template:Infobox/doc
  • モジュール:Infobox/former
  • モジュール:Arguments

このとき、すべてのチェックボックスにチェックをいれます。

そして「書き出しボタン」を押下すると「Wikipedia-20220908091154.xml」このようなXMLファイルがダウンロードされました。次章でこのXMLを使います。

Wikiにテンプレートとモジュールをインポート

自分のWikiにダウンロードしたXMLファイルをインポートします。

自分のWikiのURLの末尾に「Special:Import」を付与してアクセスします。

表示された画面でさきほどダウンロードしたXMLファイルを選択してファイルをアップロードします。

インターウィキ接頭辞には「ja」を指定しましょう(日本語版Wikipediaを示す)。

infoboxの動作確認

インポートが完了したらテストページでもなんでもいいので確認しましょう。

以下のコードを書いて、プレビューしてみてください。画像のような灰色のinfoboxの枠がでれば成功です。

テスト用のWikiページ
{{Infobox
|title = Infoboxのテスト
|header1 = 成功しました!
|label2 = Configured by
|data2 = gitiken
|label3 = Web
|data3 = [https://gitigeek.com gitigeek.com]
}}

infoboxの書き方のルールはコチラを参考にしてください。

基本的には”label数字”と”data数字”で列挙していくことになります。

テンプレ化されたinfoboxを使う

ここまでで、基本的なinfoboxの使用ができるようになりました。

そして次は冒頭の画像で使ったTOYOTAのinfoboxに使っていた「Template:基礎情報_会社」を使えるようにしましょう。

これは会社のWikipediaページに使われているinfoboxです。

このテンプレも先ほど同様にエクスポートしてインポートすれば使えるようになります。

エクスポート

すでに取り込み済みの設定は自動で判定してスキップしてくれるので、そのままインポートして大丈夫です。

取り込み済みの内容はスキップしてくれている

このように本家Wikiにあるいろいろなinfoboxはテンプレ化されているので、それをエクスポート→インポートの手順で使えるようになります。

ためしに以下の会社のWikipediaで使っているinfoboxをコピペして自分のWikiでプレビュー表示してみたら、ちゃんと表示されました。リンク先のページがないので赤字になっていますが、infoboxを表示するってことなら達成できました。

まとめ

本記事で示した手順でMediaWikiのバージョン「1.38.2」によるinfoboxの設定が可能でした。

初期インストール時点でinfoboxを使えるようにしておいてくれたらいいのになと思いました。

今後のバージョンアップに期待しましょう。