注意: このプラグインと tenpura さんによる WP Multibyte Patch を同時に有効にしているとコンフリクトを起こすことが確認されています。WP Multibyte Patch はメールの文字化け回避のほか、WordPress で日本語を正しく処理するために必要となる修正を網羅しているので、WP Multibyte Patch の使用をおすすめします。(2007/11/21 追加)
先月 Nippon プラグインの退役について書いたばかりですが、試してみたところ PHPMailer が導入された WordPress 2.2 でもメールの subject に一部文字化けが生じることがわかりました。そこで、当面のピンポイント fix として Nippon 2 プラグインを用意しました。しばらく様子をみて有効性が確認できましたら WordPress Trac にもパッチを送る予定です。
PHPMailer について今のところ確認している問題としては(まだ仕様を完全に理解しているわけではないので間違っているかもしれませんが)、
- 長いヘッダ行の折りたたみ(line-folding; RFC 2822 参照) がマルチバイトの文字コードに配慮せずに行われている。
- そのためマルチバイト文字が含まれた subject では、折りたたみの境界上(ほぼ15文字ごと)で文字化けが発生する場合がある。
そこで Nippon 2 ではマルチバイトにも適切に対応可能な mb_encode_mimeheader() をフィルタに挿むようにしています。
インストールの手順は、こちらから zip ファイルをダウンロードして、展開した nippon2.php を WordPress のプラグインディレクトリに置き、有効化すれば OK です。
なお、対応する WordPress のバージョンは 2.2 以降です。2.1 以前のバージョンに適用しても機能しません。また、Nippon プラグインと Nippon 2 を併用しても意味はありません。
今のところ UTF-8 の使用を前提にしているので、その他の文字コードを使用する環境で機能するかはまだ確認していません。