Trust Form利用時にメール本文の文字コードを変更したい
-
Trust Form を利用させていだいております。
現在5ヶ国語対応のサイトを制作しており、マルチ言語の対応は「mqTranslate」を使用して対応しているのですが、通常ではメール本文の設定が「ISO-2022-JP」のままですので、「utf-8」に変更したいと思っています。下記のようにadd_filterでwp_mail_charsetの値を変更しようとしたのですが、効きませんでした。
add_filter( 'wp_mail_charset', 'change_mail_charset' ); function change_mail_charset( $charset ) { return 'utf-8'; }
恐らくですが、同プラグイン内の「function _send_user_mail」内での処理を編集すれば対応できそうなのですが、どこを編集すれば良いのかお手上げです。
どなたかご教授頂けないでしょうか?
よろしくお願いします。[trust-form.php内 function _send_user_mail()]
private function _send_user_mail( $id, $data, $to ){ $data['data'] = apply_filters( 'tr_pre_auto_reply_mail', $data['data'], $id ); $body = ''; foreach ( $data['data'] as $key => $res ) { if ( $key == 'date' ) { $body .= __( 'Date', TRUST_FORM_DOMAIN ).': '.$res."\n\n"; } else { if ( isset($data['title'][$key]) ) { $body .= $data['title'][$key].': '.$res."\n\n"; } } } $body = str_replace( '[FORM DATA]', $body, $this->user_mail[0]['message2'] ); foreach ( $data['data'] as $key => $res ) { $body = str_replace( '['.$key.']', $res, $body ); } foreach ( $this->name[0] as $key => $name ) { if ( preg_match('/['.$name.']/i', $body) ) { if ( isset($data['data'][$key]) ) $body = str_replace( '['.$name.']', $data['data'][$key], $body ); } } $subject = $this->user_mail[0]['subject2']; foreach ( $this->name[0] as $key => $name ) { if ( preg_match('/['.$name.']/i', $subject) ) { if ( isset($data['data'][$key]) ) $subject = str_replace( '['.$name.']', $data['data'][$key], $subject ); } } $subject = apply_filters( 'tr_pre_auto_reply_mail_subject', $subject, $data['data'], $id ); $body = apply_filters( 'tr_pre_auto_reply_mail_body', $body, $data['data'], $id ); wp_mail( $to, $subject, $body ); do_action( 'trust_form_sent_auto_reply_mail', $data, $id, $to ); }
2件の返信を表示中 - 1 - 2件目 (全2件中)
2件の返信を表示中 - 1 - 2件目 (全2件中)
- トピック「Trust Form利用時にメール本文の文字コードを変更したい」には新たに返信することはできません。