質問 > 管理機能 > 配信メールに会員IDを追加したい |
管理機能
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
PRIA |
投稿日時: 2020/8/28 12:00
対応状況: −−−
|
常連 登録日: 2020/8/24 居住地: 投稿: 34 |
Re: 配信メールに会員IDを追加したい shiro様
早速、コードを以下に変えて走らせてみたのですが エラーは解消されませんでした。
ちなみにログインしているユーザーの会員IDは9で試しておりますので、elseになることはないかと思います。 エラーログを確認しましたら、以下のようになっておりました。
様々な箇所でエラーが発生しているようなのですが 具体的な内容については突きとめることができませんでした。 このエラーから、どのような理由が考えられますでしょうか? |
468 |
投稿日時: 2020/8/28 10:22
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 配信メールに会員IDを追加したい どのようなエラーが発生しているのか分かりませんが
if ($Order->getCustomer()->getId()=='9') のままの記述では、非会員の注文の場合、エラーになるかと思います。 非会員の場合、 $Order->getCustomer()の結果がnullになります。 上記の記述だと null->getId()となり、nullにはgetIdというメソッドは無い。というエラーになります。 if ($Order->getCustomer() && $Order->getCustomer()->getId()=='9') のようにifの条件を追加して$Order->getCustomer()の結果がnull以外かどうか判定すれば良いかと思います。 他の箇所でエラーが出ている場合は、何が原因か分かりませんので ご自身でエラーログを確認していただく必要があるかと思います。
|
PRIA |
投稿日時: 2020/8/27 13:48
対応状況: −−−
|
常連 登録日: 2020/8/24 居住地: 投稿: 34 |
Re: 配信メールに会員IDを追加したい shiro8様
連日ご回答くださり、ありがとうございます。 $Order->getCustomer()->getId() PHPではこのような記法になっているのですね。 if ($Order->getCustomer()->getId()=='9'){ このような指定ではエラーになりましたので ->setTo([$Order->getEmail()]) と同じように呼び出すのだと推測しておりますが、 条件式に、$Order->getCustomer()->getId()を使いたいときは どうすればよいのでしょうか? |
468 |
投稿日時: 2020/8/27 12:55
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 配信メールに会員IDを追加したい twigとphpではEntityクラスのメソッドの呼び出しの記述が変わります。
phpで記述される際は Order.Customer.id は $Order->getCustomer()->getId()となります。 エラーが発生しているのはその辺りではないでしょうか?
|
PRIA |
投稿日時: 2020/8/26 14:56
対応状況: −−−
|
常連 登録日: 2020/8/24 居住地: 投稿: 34 |
Re: 配信メールに会員IDを追加したい shiro8様
ご回答いただき、感謝いたします。 Customer.id またはOrder.Customer.idで取得できるとの事で 以下、一連のコード内に
if ({Order.Customer.id=='9'){ ->setBcc($this->BaseInfo->getEmail01()) }else{ ->setBcc(array($this->BaseInfo->getEmail01(),'test01@gmail.com';,'test02@gmail.com';)) } このように記述しましたが、会員の新規登録をしようとすると 「システムエラーが発生しました」と出てしまいます。 $で変数を宣言してどこかのクラスから参照しなければならないのでしょうか? |
468 |
投稿日時: 2020/8/26 10:43
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 配信メールに会員IDを追加したい 送信しようとするメールにもよりますが
Customer.id Order.Customer.id 等で取得できると思います。
|
PRIA |
投稿日時: 2020/8/25 13:14
対応状況: −−−
|
常連 登録日: 2020/8/24 居住地: 投稿: 34 |
配信メールに会員IDを追加したい ・EC-CUBE4
・さくらマネージドサーバー ・Windows10 64bit ・PHP7.3.21 フォーム上では、以下のような記述で 会員IDの取得または条件分けができるのですが、 {% if app.user.id == '3' %} 会員ID:{{ app.user.id }} {% endif %} 配信メールを管理している、MailService.phpでの取得方法やifの構文が分からず、ご質問させていただきました。 |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |