スマイルサーバのver4に移動してから、WordpressのContactForm7で送ったメールが文字化けするという現象が起こりました。
正確には、メールフォームで入れた項目が「????」という文字化けをし、そのほか設定した文字(たとえば、「このメールは●●サイトのお問い合わせから送っています」などのテンプレートの文字)は文字化けしていません。
ContactForm7の文字化けについては、いろいろと記事がありましたが、そのうちの
Contact Form 7で送るメールの文字化けが直らない
php.iniのmbstring.encoding_translation = OnをOffにしたら文字化けしなくなりました。
が参考になりました。
実際に、phpinfoでサーバ情報を見ると、「mbstring.encoding_translation」は「On」でした。
ただ、その設定をするとうまくいくのですが、「On」になっていたのを「Off」にするのは少々抵抗があります。
そのほか見ていて、
mbstring.encoding_translationが原因で文字化け
での設定がよさそうです。
スマイルサーバの「php.ini」は「.user.ini」である必要があるので、そのファイルに
[code]
mbstring.http_input = UTF-8
mbstring.internal_encoding = UTF-8
mbstring.substitute_character = "?"
[/code]
を記入して、文字化けは防げました。
コメントを残す