内容が古くなっている可能性がありますのでご注意下さい。
今回はいよいよ本題のWikibase(リポジトリとクライアント)をインストールします。
シェル上の作業では、PHPのパッケージ管理ツールComposerを使用します。 そこでまず、ホームディレクトリに composer.phar をインストールしました。Composerのインストール方法はこちらを参照して下さい。
WikibaseはGitHubから入手します。MediaWikiのルートディレクトリ下にある extensions ディレクトリに移動してから、gitコマンドを使用します。
cd extensions git clone -b REL1_33 https://github.com/wikimedia/mediawiki-extensions-Wikibase.git
このとき、MediaWikiのバージョンに合ったWikibaseを指定することが重要です。前回インストールしたMediaWikiのバージョンは1.33.0でしたので、「REL1_33」を指定しています。
mediawiki-extensions-Wikibase ディレクトリが作成されるので、Wikibase に改名し、git submodule コマンドで依存するサブモジュールをインストールします。
mv mediawiki-extensions-Wikibase Wikibase cd Wikibase git submodule update --init --recursive
次に、Composerを使って依存するモジュールをインストールします。
MediaWikiのルートディレクトリに以下の内容で composer.local.json ファイルを作成します。
{ "extra": { "merge-plugin": { "include": [ "extensions/Wikibase/composer.json" ] } } }
もともとある composer.local.json-sample ファイルを利用しても良いでしょう。
MediaWikiのルートディレクトリでComposerを起動します。
今回、ホームディレクトリに composer.phar をインストールしたので、以下のように指定しました。
php ~/composer.phar install --no-dev
このとき、もしも composer.lock ファイルがあれば、削除しておくことが重要です。古い composer.lock ファイルが残っていると、必要なモジュールがインストールされず、以降の作業でエラーが出る場合があります。
ここまで来れば作業は残りわずかです。
LocalSettings.php ファイルの最後に以下の内容を追加します。
$wgEnableWikibaseRepo = true; $wgEnableWikibaseClient = true; require_once "$IP/extensions/Wikibase/repo/Wikibase.php"; require_once "$IP/extensions/Wikibase/repo/ExampleSettings.php"; require_once "$IP/extensions/Wikibase/client/WikibaseClient.php"; require_once "$IP/extensions/Wikibase/client/ExampleSettings.php";
MediaWikiのルートディレクトリで以下のコマンドを実行します。
php maintenance/update.php
さらに、extensions/Wikibase ディレクトリに移動してから以下のコマンドを実行します。
php lib/maintenance/populateSitesTable.php php repo/maintenance/rebuildItemsPerSite.php php client/maintenance/populateInterwiki.php
以上で作業は終了です。ブラウザでMediaWikiにアクセスし、サイドメニューの一番下に「他言語版」「リンクを追加」が表示されていれば成功です。
サイドメニューの「特別ページ」をクリックして特別ページを表示すると、Wikibase関連のページへのリンクが追加されています。