MediaWiki サイトマップの作成

提供: TeaPot
移動: 案内, 検索

MediaWikiの標準機能でサイトマップを作成する。

  • サーバーはxrea
  • URLはhttp://www.tmp.com/
  • public_htmlにMediaWikiのルートがあるとします
  • アカウント名はaccount_name
  • データベース名はdb_name(仮)
  • データベースのプリフィックスはmw_

maintenance/generateSitemap.phpを使うのですが、そのままでは、localhostで書き出すので、文字列を変換して、URLのルートにコピーします。

そこで、一度、tmpにサイトマップを書き出し、sedを使って変換したものをルートに持って行きます。

sitemap.sh

#!/bin/sh
 
echo generating the sitemap…
/usr/local/bin/php5 /virtual/account_name/public_html/maintenance/generateSitemap.php --fspath=/virtual/account_name/tmp/ --server=http://www.tmp.com --compress=no
 
echo repairing the index filecd /virtual/account_name/tmp
sed 's/<loc>/<loc>http:\/\/www.tmp.com\//g' sitemap-index-db_name-mw_.xml > /virtual/account_name/public_html/sitemap.xml
 
echo repairing the files…
for i in $( ls sitemap-db_name*.xml ); do
sed 's/localhost/www.tmp.com/g' $i > /virtual/account_name/public_html/$i
done

これをcronで動かします。cronが使えないなら、sitemap.cgiとして、外からアクセスすれば動くのかも。

個人用ツール
名前空間

変種
操作
案内
情報
ツール