バージョン選択

フォーラム

メニュー

オンライン状況

51 人のユーザが現在オンラインです。 (41 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 51
もっと...

サイト内検索

質問 > 管理機能 > 受注メールのFromが表示されない(送信者不明)

管理機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
rrr1234567
投稿日時: 2018/3/19 19:34
対応状況: 解決済
半人前
登録日: 2017/11/16
居住地:
投稿: 16
Re: 受注メールのFromが表示されない(送信者不明)
h_tanaka さん
Ringo さん

教えていただきありがとうございます。
おふたりにいただいた回答を参考にさせていただき、解決いたしましたのでご報告いたします。

ショップ名の取得に何らかの問題があったようです。
ショップ名のみ、直書きにしました。


■デフォルト

->setFrom(array($this->BaseInfo->getEmail01() => $this->BaseInfo->getShopName()))


■変更後

->setFrom(array($this->BaseInfo->getEmail01() => "ショップ名"))


ゲスト
投稿日時: 2018/3/16 19:56
対応状況: −−−
Re: 受注メールのFromが表示されない(送信者不明)
下記のコードの様に
dump($message);
//return $message;
として、オーダーして、
Swift_Messageの「from" => array:1」の内容を下記の様に確認してみてください。

"hoge@hoge.co.jp"; => "株式会社ほげ"

の所をがどうなっているか、、、で、
設定(貴殿のメールクライアントの設定)の問題か
ECCBUEの問題か
の切り分けができますので。。。

"from" => array:1 [▼
0 => Swift_Mime_Headers_MailboxHeader {#2470 ▼
-_mailboxes: array:1 [▼
"hoge@hoge.co.jp"; => "株式会社ほげ"
]



    public function sendOrderMail(\Eccube\Entity\Order $Order)
    {
        log_info('受注メール送信開始');

        $MailTemplate = $this->app['eccube.repository.mail_template']->find(1);

        $body = $this->app->renderView($MailTemplate->getFileName(), array(
            'header' => $MailTemplate->getHeader(),
            'footer' => $MailTemplate->getFooter(),
            'Order' => $Order,
        ));

        $message = \Swift_Message::newInstance()
            ->setSubject('[' . $this->BaseInfo->getShopName() . '] ' . $MailTemplate->getSubject())
            ->setFrom(array($this->BaseInfo->getEmail01() => $this->BaseInfo->getShopName()))
            ->setTo(array($Order->getEmail()))
            ->setBcc($this->BaseInfo->getEmail01())
            ->setReplyTo($this->BaseInfo->getEmail03())
            ->setReturnPath($this->BaseInfo->getEmail04())
            ->setBody($body);

            dump($message);

        $event = new EventArgs(
            array(
                'message' => $message,
                'Order' => $Order,
                'MailTemplate' => $MailTemplate,
                'BaseInfo' => $this->BaseInfo,
            ),
            null
        );
        $this->app['eccube.event.dispatcher']->dispatch(EccubeEvents::MAIL_ORDER, $event);

        $count = $this->app->mail($message);

        log_info('受注メール送信完了', array('count' => $count));

        //return $message;

    }


Swift_Message {#2450 ▼
  -headerSigners: []
  -bodySigners: []
  -savedMessage: []
  #_userFormat: null
  #_userCharset: "utf-8"
  #_userDelSp: null
  -_nestingLevel: 4096
  -_headers: Swift_Mime_SimpleHeaderSet {#2451 ▼
    -_factory: Swift_Mime_SimpleHeaderFactory {#2452 ▶}
    -_headers: array:11 [▼
      "content-transfer-encoding" => array:1 [▶]
      "content-type" => array:1 [▶]
      "mime-version" => array:1 [▶]
      "date" => array:1 [▶]
      "message-id" => array:1 [▶]
      "from" => array:1 [▼
        0 => Swift_Mime_Headers_MailboxHeader {#2470 ▼
          -_mailboxes: array:1 [▼
            "hoge@hoge.co.jp" => "株式会社ほげ"
          ]
          -_name: "From"
          -_grammar: Swift_Mime_Grammar {#2458}
          -_encoder: Swift_Mime_HeaderEncoder_QpHeaderEncoder {#2453 ▶}
          -_lineLength: 78
          -_lang: null
          -_charset: "utf-8"
          -_cachedValue: null
        }
      ]
h_tanaka
投稿日時: 2018/3/16 9:00
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1610
Re: 受注メールのFromが表示されない(送信者不明)
->setFrom(array($this->BaseInfo->getEmail01() => $this->BaseInfo->getShopName()))

の部分ですが、配列のキーにメールアドレス、値に表示名を指定できます。
メールアドレスが表示されないということでしたら、ここの値が正常に取得できているか確認してみてください。
また、どうしても解決しないなら固定値を指定するのもありかと思われます。


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

rrr1234567
投稿日時: 2018/3/15 18:38
対応状況: −−−
半人前
登録日: 2017/11/16
居住地:
投稿: 16
Re: 受注メールのFromが表示されない(送信者不明)
ご返信ありがとうございます!


app/config/eccube/mail.yml の変更を試してみました。
残念ながら送信元の空欄は解決いたしませんでした。



メールの詳細を見てみますと、
Received: from によると、きちんと設定したさくらサーバーのドメインから届いております。

ソースの中のFromには、ショップ名が記載されておりますが、通常アドレスが記載される<>の中が何も記載されておりませんん。


▼メールのソース
Subject: [ショップ名] メールタイトル
From: ショップ名 <>
Reply-To: info@example.com




以下のPHPは、初期設定のままなのですが、
こちらを変更することでなにか解決をする可能性がありますでしょうか。


▼MailService.php 246行目


$message = \Swift_Message::newInstance()
->setSubject('[' . $this->BaseInfo->getShopName() . '] ' . $MailTemplate->getSubject())
->setFrom(array($this->BaseInfo->getEmail01() => $this->BaseInfo->getShopName()))
->setTo(array($Order->getEmail()))
->setBcc($this->BaseInfo->getEmail01())
->setReplyTo($this->BaseInfo->getEmail03())
->setReturnPath($this->BaseInfo->getEmail04())
->setBody($body);




よろしくお願いいたします。
h_tanaka
投稿日時: 2018/3/15 11:09
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1610
Re: 受注メールのFromが表示されない(送信者不明)
そのような現象になったことがないのでわかりませんが、SMTP設定をすれば解決するかもしれません。

app/config/eccube/mail.yml
を変更してみてください。

以下、独自サーバーの場合の例です。
さくらの場合は host や port が決まっていると思いますので、サーバーの管理者コンソールをご確認ください。

mail:
transport: smtp
host: smtp.xxx.xxx
port: 587
username: xxx@xxx.xxx
password: xxxxxxxx
encryption: null
auth_mode: null
charset_iso_2022_jp: false
use_spool: true


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

rrr1234567
投稿日時: 2018/3/13 21:45
対応状況: −−−
半人前
登録日: 2017/11/16
居住地:
投稿: 16
受注メールのFromが表示されない(送信者不明)
注文完了後に自動送信されるメールの
From欄が入力されておらず、
送信者不明のまま送信されてしまいます。

返信先には、登録したメールアドレスが記載されています。

管理画面の
設定>基本情報設定>ショップマスター
には、以下の4項目すべて同じアドレスを入力しております。

送信元メールアドレス(From)
問い合わせ受付メールアドレス(From, ReplyTo)
返信受付メールアドレス(ReplyTo)
送信エラー受付メールアドレス(ReturnPath)

From欄に送信元メールアドレスを
表示させる方法を、教えていただきたいです。

よろしくお願いいたします。


▼テンプレート
バージョン:EC-CUBE 3.0.13
サーバー:さくらサーバー(レンタルサーバー、スタンダード)
OS:Win10 もしくは Win7
PHP:PHP 7.1
データベース:MySQL 5.7
ブラウザ:Google Chrome
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,282名です
総投稿数は109,688件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.