4

お問い合わせフォームのメールの「差出人」フィールドを送信者の「差出人」フィールドに変更するにはどうすればよいですか?たとえば、顧客がフォームに「test@test.com」という電子メールを入力する場合、生成された電子メールを「test@test.com」から送信するにはどうすればよいですか。

システム管理パネルの「電子メール送信者」フィールドを見てきましたが、これは事前設定されたストアの電子メールの範囲のみを許可します。

どうもありがとう

4

2 に答える 2

7

これが送信される場所はapp/code/core/Mage/Contacts/controllers/IndexController.php約100行目です。メールの返信先アドレスはすでに投稿のメールアドレスに設定されているようですので、もっと簡単に返信したい場合は、それをだまさないことをお勧めします。

なりすましの「差出人」アドレスを使用して電子メールを送信すると、サイトが多くの電子メールプロバイダーからすぐにブラックリストに登録され、他のビジネスに影響を与える可能性があるという別の問題が発生する可能性があります。

それでも、これを実行したい場合は、そのファイルでこのコードを少し変更してください。

            $mailTemplate->setDesignConfig(array('area' => 'frontend'))
                ->setReplyTo($post['email'])
                ->sendTransactional(
                    Mage::getStoreConfig(self::XML_PATH_EMAIL_TEMPLATE),
                    Mage::getStoreConfig(self::XML_PATH_EMAIL_SENDER), // change this
                    Mage::getStoreConfig(self::XML_PATH_EMAIL_RECIPIENT),
                    null,
                    array('data' => $postObject)
                );

お役に立てば幸いです。

ありがとう、ジョー

于 2011-05-31T18:15:10.163 に答える
1

Magento Contact Form - 自分からメールを受信して​​いるのは、この質問の新しい複製であり、Joe の回答により、正しい道をたどることができました。重複した質問への回答で、オーバーライドするカスタム モジュールを作成し、app/code/core/Mage/Contacts/controllers/IndexController.php上記の行を に変更しarray('name'=>$post['name'], 'email'=>$post['email']),て修正しました。

私見ですが、適切に過負荷になるまで保持しなければならないコアで緊急の小さな修正を行うときは、必ず各行の最後に私のイニシャルを 2 回コメントして//CKCK hack to fix ___ください。その後、これを grep して、ssh シェル経由ですべての mod を表示できます。 :app/code/core$ grep -rn "CKCK" *

バージョン管理にも github を使用していますが、これも役に立ちます。

于 2013-02-15T21:20:56.230 に答える