HTMLコーディング

EC-CUBE3で自動返信メールが文字化けし、そしてタイトルが途中で切れたときの対処法

大阪はすっきりしない天気が続いてロードバイクに乗れずテンション下がりまくりのともさんですこんにちは。

さて、前回に引き続き今回もEC-CUBE関連です。
ほんと問題児です。
どうにかしてくれ。

自動返信メールが文字化けしました。

はいそれはもう。
どっかからウイルスメールが来たのではと思うほど。

自動返信メールの文字化け
実は本文の文字化けはなかったんです。
しかし、ヘッダの文字化けがすごかったんです。
おまけに、メールタイトルも途中で切れてます。

これはどうにかしないといけません。

対処法

文字化けそのものは文字コードの関連なので、その辺の設定をいじれば大丈夫です。

まずは、以下のファイルを修正します。
app/config/eccube/mail.yml

charset_iso_2022_jp: false

これを

charset_iso_2022_jp: true

に変更します。

次に、以下のファイルを修正します。
src/Eccube/Service/MailService.php

->setReturnPath($this->BaseInfo->getEmail04())
->setBody($body);

これを

->setReturnPath($this->BaseInfo->getEmail04())
->setBody($body)
->setCharset('iso-2022-jp')
->setEncoder(new \Swift_Mime_ContentEncoder_PlainContentEncoder('7bit'));

こうします。

MailService.php内に9箇所あります。
すべて置き換えてください。

最後に、以下のファイルを修正します。
/vendor/swiftmailer/swiftmailer/lib/classes/Swift/Mime/HeaderEncoder/Base64HeaderEncoder.php

$newstring = mb_encode_mimeheader($string, $charset, $this->getName(), "\r\n");

これを

$newstring = mb_encode_mimeheader($string, $charset, $this->getName(), "\n");

こうします。

改行コードだけ修正しました。
今回の場合、2つ目までの対応では解決せず、3つ目まで行ってはじめて解決しました。

すべての対応を行った上で、ファイルをFTPにアップロードすれば完了です。
これでヘッダの文字化けは解消されました。

まとめ

EC-CUBE3の情報は、ネット上にはなかなか上がっていないのか、Google先生に聞いても「知りませんくそが」と言われることが多いんですが|д゚)
wordpressの情報はくさるほどあるのに。

うーん、トライ&エラーでやるしかないですねー
がんばります。

ともさんでした。

ピックアップ記事

  1. 【お客様インタビュー】サンキョウプラテック株式会社様

関連記事

  1. HTMLコーディング

    【WordPressでGO!】WordPressの子テーマを作ってみよう

    前回の記事から1週間も経っていないことに軽く衝撃を感じているともさんです、こんにちわ。もう正月気分も抜けて、いよいよ体重が気になりだしたころでしょ…

  2. HTMLコーディング

    css3だけで立体的でアニメーション付きのボタンを作ろう

    はじめまして、制作チームキャップの徳永です。今年でテイクフォーも4期目に突入し、そろそろ自社サイトでまじめに記事を書いていみようという事になったの…

  3. HTMLコーディング

    EC-CUBE3をローカル環境へインストールしてみよう

    寒い!((((;゚Д゚))))寒すぎてロードバイク諦めかけてるともさんです、こんにちわ。EC-CUBE3のテスト環境を作りたくて、どこに作…

  4. HTMLコーディング

    最近流行りの静的サイトジェネレータについて掘り下げてみる【Movable Type編】

    最近、耳をふさがないイヤホンを見つけて衝動買いしてしまったワタクシ、ともさんです。こんにちわ。Bluetoothではないのに、まあまあ高め…

  5. HTMLコーディング

    社内勉強会を行いました。

    こんにちわ、入社2ヶ月のともさんです。さて、去る9月16日(金)19:00~社内勉強会を行いました。テイクフォーでは初の勉強会となります。…

  6. HTMLコーディング

    cssでグラデーションを描いてみよう

    年末に向けていろいろと身辺周りが慌ただしくなってきましたね。こんにちは、ともさんです( ^ω^ )グラデーションをcssで描けることはもう…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


最近の記事

  1. WEBデザイン

    【Photoshop】ボタントレース方法
  2. HTMLコーディング

    棒グラフをcssで表現してみよう
  3. WEBデザイン

    よく見る方眼紙のようなパターンの作り方
  4. HTMLコーディング

    EC-CUBE3で自動返信メールが文字化けし、そしてタイトルが途中で切れたときの…
  5. WEBデザイン

    【Photoshop】レイヤーを上手く使い回そう Vo.2リンクオブジェクト編
PAGE TOP