昨日、各blogのサイドバーに「人気のblog記事」というのを表示するようにしましたが、新しい記事の投稿など再構築されるタイミングでなければ更新できません。

また、本日はモブログを設定したのですが、メールによる投稿ではトップページとblogっぷり!のページがやはり再構築しなければ反映できません。

そこで、mt-rebuildとcronを使って各blogのサイドバー、トップページ、blogっぷり!のテンプレートを1時間毎に自動で再構築するようにしました。

その方法はいろいろなblog等で説明されているので割愛しますが、cronの設定でmt-rebuildを実行させるためのコマンドを、トップページの場合

(MTのディレクトリパス)/mt-rebuild.pl -mode="index" -blog_id="1" -template="メインページ"

として実行すると、以下のようなエラーになります。

Rebuild Error: Can't load template メインページ in blog_id of 1 at /home/htdocs/vuser/will3injp/public_html/cgi/mt4/mt-rebuild.pl line 112.

メインページというテンプレートが見つからないって言ってます。
そこで日本語は駄目なのかなと思い、テンプレートの名前を「main_page」に変更し、cronのコマンドを

(MTのディレクトリパス)/mt-rebuild.pl -mode="index" -blog_id="1" -template="main_page"

としたらOKでした。

シェルスクリプト(ファイル名を仮に rebuild.sh とする)に

#!/bin/sh
 
(MTのディレクトリパス)/mt-rebuild.pl -mode="index" -blog_id="1" -template="メインページ"
(複数の再構築スクリプトを記述)
 
exit

を記述して任意のディレクトリにアップロードし、cronでこれを実行させるように

(rebuild.sh のディレクトリパス)/rebuild.sh

と指定すれば日本語のテンプレート名でもよかったんですね。(7月30日訂正)