バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > オーダーメール2回送信される

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
windeckern
投稿日時: 2018/5/16 16:58
対応状況: −−−
新米
登録日: 2017/7/19
居住地:
投稿: 3
オーダーメール2回送信される
▼テンプレート
[EC-CUBE] 3.0.13
[レンタルサーバ] さくらレンタルサーバー
[OS] FreeBSD
[PHP] 5.6.33
[導入プラグインの有無] エプシロン

[現象]
毎回ではありませんが、オーダー内容のメールが時々2回送られてしまうお客さんがいます。不安になってお問い合わせがくるそうです。
注文情報ページのメール通知を確認すると、確かにメールは2回送信されております。
MailService.phpを確認したところで何も問題あるかと感じないです。

念のためこの関数だと思います。

/**
* Send order mail.
*
* @param \Eccube\Entity\Order $Order 受注情報
* @return string
*/
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);

$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;

}


さくらサーバーを使用しており、サーバー側で何か原因あるかも調査していますが、サーバーが原因だとしたら、管理画面に2回目のメール通知は出てこないかと思います。

エプシロンの決済プラグインを使っています。

流れ的にエプシロンのフローは以下です。
【カートページ】⇒【エプシロン決済(別ページ)】⇒【本サイトに戻り、支払い完了】
支払い完了時にエプシロンのプラグインがメール送信の関数を使っています。

以下です。

/**
* Send order mail.
*
* @param $Order 受注情報
*/
public function sendOrderMail(\Eccube\Entity\Order $Order, $arrOther)
{
$defaultMailTemplate = $this->app['eccube.repository.mail_template']->find(1);

$body = $this->app->renderView('GmoEpsilon/Twig/mail/epsilon_order.twig', array(
'header' => $defaultMailTemplate->getHeader(),
'footer' => $defaultMailTemplate->getFooter(),
'Order' => $Order,
'arrOther' => $arrOther,
));

$message = \Swift_Message::newInstance()
->setSubject('[' . $this->BaseInfo->getShopName() . '] ' . $defaultMailTemplate->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);

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

return $message;
}

何か原因のアイデアありましたら、とても助かります。

よろしくお願いいたします。
hmorita_j
投稿日時: 2018/5/19 15:55
対応状況: −−−
長老
登録日: 2017/3/3
居住地: 沈黙の巨大都市松戸
投稿: 222
Re: オーダーメール2回送信される
確実に再現できるケースを見つけられれば解決は早いと思います。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,288名です
総投稿数は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.