ショウジンブログ on Hatena

“お芝居をしないと、この社会では異邦人として扱われるほかない”

メールフォームで送信内容が文字化けする場合@WordPress - WP Multibyte Patch

多言語(日本語、英語、ハングル、ベトナム語繁体字簡体字)対応のWordPressサイトを構築する際にあった不具合と、それを解消するTipsを残しておきます。

2バイト文字対策のプラグイン「WP Multibyte Patch」を有効化しているとハングルや中国語、ベトナム語といった他言語の送信内容が文字化けしました。

MW WP Form(私はここ2年ほどこのプラグインを愛用しています)だと、多言語対応しているプラグインなのでデータベースに蓄積される内容は化けません。

送信内容を送信する際の文字コードの問題でした。

WP Multibyte Patchを有効化していると文字コードが「JIS (ISO-2022-JP) エンコーディング」で送信されるためです。

これを解消するにはWP Multibyte Patchの設定ファイルを作り、設定を変更します。

pluginsフォルダ内のwp-multibyte-patchフォルダ内にある

wpmp-config-sample-ja.php

wpmp-config.php

にリネームし、このファイル内の

$wpmp_conf['mail_mode'] = 'JIS'

となっている部分を

$wpmp_conf['mail_mode'] = 'UTF-8'

に変更します。

そして

$wpmp_conf['patch_wp_mail'] = true;

$wpmp_conf['patch_wp_mail'] = false;

に変更します。

そして、このwpmp-config.phpをwp-content直下に移動させます。

f:id:showjinx:20160606161554p:plain