あるところから「メールフォームで送信されたメールが文字化けする」との連絡を受け、調査してみた。
使用しているプラグインは「Contact Form 7」。
日本人が制作しているだけあって、文字化けがないと評判のプラグイン。しかし、これで文字化けするという。
そこで、当方環境でもメールを受信させてみたところ、文字化けしない。メーラはbecky/thunderbird/MacintoshのMail。
becky!で受信したメールをよく見ると、メール本文を表示させた時にフォントが若干違うことに気付く。
嫌な予感がして、ヘッダを見ると「UTF-8」・・・・え?
そこで文字化けしてないと思われるメールのヘッダを見たところ「ISO-2022-JP」!
なるほど!!
でも対処法が分からないので「Contact Form7」のソースを追いかけてみたり、wp_mailのロジックを追いかけてみたけど改善しない。
確か文字化け対策のプラグインが・・・と思い出し、「wp_multibyte_patch」を眺めてみると、そこに解決の糸口が!!
・・・・/wp-content/plugins/wp-multibyte-patch/ext/ja/config-sample.phpをconfig.phpへリネーム。
config.php内の
$wpmp_conf['mail_mode'] = ‘auto’;
を
$wpmp_conf['mail_mode'] = ‘jis’;
へ変更。
これで全てのメールがISO-2022-JPで送信されるようになる。
著者/訳者:高山 一登 大久保 アキラ 酒井 隆
出版社:翔泳社( 2008-09-11 )
定価:¥ 2,940
大型本 ( 328 ページ )
ISBN-10 : 479811667X
ISBN-13 : 9784798116679
