miyagawa さんの「blog.bulknews.net: MT コメントSPAM Blacklist ファイル更新」と NDO::Weblog の naoya さんの「NDO::Weblog: Hacking the Hack: MT コメントSPAM Blacklist ファイル更新」を参考にスパム対抗準備してたのですが、自分以外の人間も同じ MT を使っているのに告知するのを忘れていたために、意味の分からない人が間違ってコメント削除し blacklist 登録をしてしまう事件が発生してしまいました。
こんなところに力を使ってもと思いましたが、メッセージも英語のままだと分かりにくいのかしらと思い L10N 機能を利用してメッセージのローカライズをしてみました。
上記 2つのコメントスパム対抗策設置が済んでいる前提で lib/MT/App/Comment.pm の 247行目付近を以下のようにします。
$body = Text::Wrap::wrap('', '', $body) . "\n$link_url\n\n" . $app->translate('IP Address:') . ' ' . $comment->ip . "\n" . $app->translate('Name:') . ' ' . $comment->author . "\n" . $app->translate('Email Address:') . ' ' . $comment->email . "\n" . $app->translate('URL:') . ' ' . $comment->url . "\n\n" . $app->translate('Comments:') . "\n\n" . $comment->text . "\n" . "\n" . $app->translate('Do you want to append this URL into your blacklist?') . "\n" . $app->base . $app->path . "mt-blacklist-append.cgi?password=blockblack&url=" . MT::Util::encode_url($comment->url) . "&id=" . $comment->id;
日本語化されたメッセージカタログ lib/MT/L10N/ja.pm の 897行目辺りにメッセージを追加します。
# スパム対策 'Do you want to append this URL into your blacklist?' => 'このコメント(URL)を Blacklist に追加しますか?', ); 1;
これでコメント通知メイルの最後が
このコメント(URL)を Blacklist に追加しますか?
http://blog.bulknews.net/mt/mt-blacklist-append.cgi?password=blahblah&url=http://…….
となり、終了。満足。