バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

プラグイン > 開発について > 問い合わせ時の返信メールに添付ファイルを付けたい

開発について

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
chappy
投稿日時: 2017/6/8 15:05
対応状況: −−−
一人前
登録日: 2011/7/19
居住地:
投稿: 87
問い合わせ時の返信メールに添付ファイルを付けたい
プラグインにて、問い合わせ時の返信メールに添付ファイルを付けようとしています。

引用:

// 問い合わせ者にメール送信
$message = \Swift_Message::newInstance()
->setSubject('[' . $this->BaseInfo->getShopName() . '] お問い合わせを受け付けました。')
->setFrom(array($this->BaseInfo->getEmail02() => $this->BaseInfo->getShopName()))
->setTo(array($formData['email']))
->setBcc($this->BaseInfo->getEmail02())
->setReplyTo($this->BaseInfo->getEmail02())
->setReturnPath($this->BaseInfo->getEmail04())
->setBody($body)
->attach(Swift_Attachment::fromPath($this->_attFile))


この「->attach(Swift_Attachment::fromPath($this->_attFile))」を付け加えることで、できそうな気がするんですが、

--------------
Attempted to load class "Swift_Attachment" from namespace "Plugin\Customize\Service".
Did you forget a "use" statement for another namespace?
--------------
とエラーになってしまい、この設定が分からず詰まっております。

どなたか、ご教授頂けませんでしょうか?


[EC-CUBE]3.0.14
hata
投稿日時: 2017/6/8 17:23
対応状況: −−−
長老
登録日: 2015/8/3
居住地: 宮城県(2017/09末引退)
投稿: 156
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
classのSwift_Attachmentを使うためにソースファイルの頭で
use ほにゃらら;
が必要では?と言われているので、Swift_Attachmentのclassが
定義されている場所を探して記述してみてください。
(vender/にあるのかな?)
chappy
投稿日時: 2017/6/8 22:56
対応状況: −−−
一人前
登録日: 2011/7/19
居住地:
投稿: 87
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
hataさん、ありがとうございます。

おっしゃるとおり、
vendor\swiftmailer\swiftmailer\lib\classes\Swift\Attachment.php

に、
class Swift_Attachment extends Swift_Mime_Attachment

なるものが、ありましたので、これかな?と思います。

しかし、肝心の呼び出し方で、詰まっております。

use vendor\swiftmailer\swiftmailer\lib\classes\Swift\Attachment;

ではダメでした。
いろいろ試しましたが、分かりません。
初歩的な事を伺っているとは思いますが、ヒント頂けないでしょうか?
hata
投稿日時: 2017/6/8 23:17
対応状況: −−−
長老
登録日: 2015/8/3
居住地: 宮城県(2017/09末引退)
投稿: 156
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
ちょっとuseの前に試したいのが...

追加した処理の上のほうに \Swift_Message ってのがあるので、\Swift_Attachment だとどうでしょう?

当てずっぽうですが...
hata
投稿日時: 2017/6/9 12:56
対応状況: −−−
長老
登録日: 2015/8/3
居住地: 宮城県(2017/09末引退)
投稿: 156
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
> 追加した処理の上のほうに \Swift_Message ってのがあるので、\Swift_Attachment だとどうでしょう?
アタリでした。以下で注文受付メールに添付できましたのでお試しください。
attach(\Swift_Attachment::fromPath(サーバー上のファイルパス※実験では画像ファイルを使用))
chappy
投稿日時: 2017/6/9 14:14
対応状況: −−−
一人前
登録日: 2011/7/19
居住地:
投稿: 87
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
ありがとうございます!!

私の方でも、\Swift_Attachmentにてエラーが出なくなりましたので、この問題は解決したと思います。

ですが、、、、
エラーは全くでなくなったのですが、

引用:
->attach(\Swift_Attachment::fromPath('xxx/xxx/test.jpg'));


を付けるとメール自体が届かなくなりました。

hataさんの環境では添付できたとのことで、お伺いしたいのですが、
結局のところ、元の状態から修正した箇所は、->attach(\Swift_Attachment::fromPath('xxx/xxx/test.jpg'));の部分の追加だけということですよね?
hata
投稿日時: 2017/6/9 14:20
対応状況: −−−
長老
登録日: 2015/8/3
居住地: 宮城県(2017/09末引退)
投稿: 156
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
試したのはxampp環境ですが以下のようにして指定しています。
添付ファイルのパスの指定方法の問題でしょうかね?
※成功したときは以下のようにサーバ内のフルパスを書いていました。
src/Eccube/Service/MailService.php sendOrderMail()
        $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())
            ->attach(\Swift_Attachment::fromPath('D:\xampp-5.6.15\htdocs\eccube-3.0.14\html\template\default\img\top\mv01.jpg'))★ここに追加
            ->setBody($body);
hata
投稿日時: 2017/6/9 15:29
対応状況: −−−
長老
登録日: 2015/8/3
居住地: 宮城県(2017/09末引退)
投稿: 156
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
Linuxサーバで'xxx/xxx/test.jpg'がhtml/からのパスなら、
 
\Swift_Attachment::fromPath($this->app['config']['public_path_realdir'].'/xxx/xxx/test.jpg')
でしょうか?
html/配下でなければ、app/config/eccube/path.yml から良さそうなのを見つけて使ってください。
もしパスが通っているハズなのにダメな場合は、対象ファイルまでのディレクトリかファイル自体のパーミッションもご確認ください。
chappy
投稿日時: 2017/6/9 15:30
対応状況: 解決済
一人前
登録日: 2011/7/19
居住地:
投稿: 87
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
フルパスを指定することで、添付メールを送ることができました!

やはり、パスの指定に問題があったようです。

ご親切な説明、ありがとうございました!!助かりました。
chappy
投稿日時: 2017/6/9 15:32
対応状況: −−−
一人前
登録日: 2011/7/19
居住地:
投稿: 87
Re: 問い合わせ時の返信メールに添付ファイルを付けたい
$this->app['config']['image_save_realdir']

にて成功しました。

ありがとうございました!
(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1568
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.