WordPressには、コメントがつくとメールで通知してくれる機能がついてるんだけど、UTF-8にしたらそのメールが文字化けして届くようになったのね。
PHP4には mb_internal_encoding という内部文字エンコーディングを設定する呪文があるので、functions.phpに追加してみたよ。
追加したのは、functions.phpの1003行目。
if (function_exists('mb_send_mail')) {
mb_language('Japanese'); ←追加
mb_internal_encoding("UTF-8"); ←追加
mb_send_mail($user->user_email, $subject, $notify_message, $message_headers);
} else {
@mail($user->user_email, $subject, $notify_message, $message_headers);
}
これでいいのかどうかよく分んないれけど、文字化けは直ったよ。
他のメールを送る関数のところも追加した方がいいかも…。
[追記 04/12/01]
functions.phpで文字コードを指定するより、wp-config.phpに書く方が、お作法的に正しいらしい。
メール以外の文字バケにも効きそうだし。
場所はwp-config.phpの6行目辺り。
// It is influenced by environment.
mb_language("Japanese"); ←
mb_internal_encoding("UTF-8"); ←

