質問 > フロント機能 > 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
FUDO |
投稿日時: 2012/4/19 19:00
対応状況: −−−
|
半人前 登録日: 2011/9/27 居住地: 投稿: 23 |
【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい [EC-CUBEバージョン] 2.11.1 アップデート履歴無し
[レンタルサーバ] EC-CUBEクラウドサーバ [PHPバージョン] PHP 5.2.17 [DBバージョン] MySQL 5.0.67-log [ブラウザ] Firefox7.0.1、Internet Explorer 8.0.6001.18702 [決済モジュール] EC-CUBEペイメント決済モジュール(2.11系) Version.2.2.1 いつも皆様のフォーラムを参考にさせていただいております。 私どもの扱っている商品は在庫が不確定で、コンビニ払いの場合、在庫が無かった商品でも 振込み先の番号がGMOペイメントゲートウェイ様から送られてしまい、大変困った状況に なってしまいました。 問い合わせてみたのですが、こちらからの折り返しメールがあるまで振込み先の番号を送るのを 止める事はできないと、GMOペイメントゲートウェイ様よりお返事をいただきました。 ですのでコンビニ決済での受注メールで、『情報』の部分を変更し、折り返しこちらから メールがあるまで、振込みを待ってもらうよう注意書きを書き加えたいのですが どこにデータがあるのかが分かりません。 コンビニ決済の『ご注文完了』画面と同じ内容なので、おそらくそのデータではないかと思い /data/downloads/module/mdl_pg_mulpayを探したのですが見つかりませんでした。 どなたかご回答下されば幸いです。 よろしくお願いいたします。 |
dimaggio |
投稿日時: 2012/4/19 19:52
対応状況: −−−
|
一人前 登録日: 2011/3/30 居住地: Tokyo 投稿: 120 |
Re: 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい メールの文章はSQLデータベースの dtb_mailtemplate に格納されていると思います。
該当のデータへのアクセスは、管理画面の 『基本情報管理』→『メール設定』 でテンプレートを選択すると画面に表示されると思います。 |
FUDO |
投稿日時: 2012/4/21 13:52
対応状況: 確認中
|
半人前 登録日: 2011/9/27 居住地: 投稿: 23 |
Re: 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい dimaggio 様、書込みありがとう御座います。
お返事が遅れてしまいすみません。 メール設定でテンプレートの注文受付メールを見てみたのですが、 どうやら私が変更したい部分は動的データ挿入部分に入っている為 メール設定から変更する事ができない様です。 動的データ挿入部分を編集する為に色々探していた所、 data/Smarty/templates/default/mail_templates/order_mail.tplに <!--{if $arrOther.title.value}--> ************************************************ <!--{$arrOther.title.name}-->情報 ************************************************ <!--{foreach key=key item=item from=$arrOther}--> <!--{if $key != "title"}--> <!--{if $item.name != ""}--><!--{$item.name}-->:<!--{/if}--><!--{$item.value}--> <!--{/if}--> <!--{/foreach}--> <!--{/if}--> という所を見つけたのですが、ここを変更すればコンビニ払いの時だけ注意書きが出るように出来るでしょうか? もし可能なら、どう編集すればよろしいのでしょうか? ご回答下されば幸いです。 よろしくお願いいたします。 |
dimaggio |
投稿日時: 2012/4/23 10:34
対応状況: −−−
|
一人前 登録日: 2011/3/30 居住地: Tokyo 投稿: 120 |
Re: 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい 意図が汲めずにすみません。
一律のメール文章ではなく、支払い方法に応じてメールの文章を変更したいというご希望だったのですね。 ご指摘のテンプレートファイル中の <!--{$arrOrder.payment_method}--> 部分に支払い方法の文字列が割り当てられています。 FUDOさんの環境で「コンビニ払い」という文字列が設定されているとすれば、文言を記入したい部分に下記の条件文を挿入するのは如何でしょうか。 <!--{if $arrOrder.payment_method == "コンビニ払い"}--> ここにコンビニ払い時のメッセージを記入。 <!--{/if}--> foreach 〜 /foreach の中ではなく、その前か後がよいと思います。 |
FUDO |
投稿日時: 2012/4/23 18:11
対応状況: 確認中
|
半人前 登録日: 2011/9/27 居住地: 投稿: 23 |
Re: 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい dimaggio 様、再度ご返信ありがとう御座います。
こちらこそ伝わり難い文章ですみません。 上に書いていただいた <!--{if $arrOrder.payment_method == "コンビニ払い"}--> ここにコンビニ払い時のメッセージを記入。 <!--{/if}--> を追加した所、無事コンビニ払いの時だけ注意書きを表示させる事が出来ました。 本当にありがとう御座います。 しかし修正をしている間に思ったのですが、コンビニ決済でのお買い物をした際の『ご注文完了』画面でも、注意書きが表示された方がお客様に親切ではないかと思いました。 ですので、よろしければコンビニ決済の『ご注文完了』画面のデータが何処にあるのかをお教えいただけますでしょうか? 重ね重ね、誠に恐縮では御座いますが、よろしくお願い致します。 |
dimaggio |
投稿日時: 2012/4/23 21:07
対応状況: −−−
|
一人前 登録日: 2011/3/30 居住地: Tokyo 投稿: 120 |
Re: 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい 『ご注文完了』ページである /shopping/complete.php というページに到達した時には、購入に関するデータはおそらく破棄されていて、前回のメールテンプレートの時のようにパラメータの値による判別はそのままではできないような気がします。
あくまで一例ですが、その直前の段階である『入力内容の確認』ページ /shopping/confirm.php を担当している /data/class/pages/shopping/LC_Page_Shopping_Confirm.php というファイルの case 'confirm': の内部などで、 if ($this->arrForm['payment_method'] == "コンビニ払い") { $_SESSION['convini_flag'] = 1; } のようにセッションにフラグを持たせておき、『ご注文完了』ページを担当する /data/class/pages/shopping/LC_Page_Shopping_Complete.php というファイルのinit()の最後の辺りで、 if ($_SESSION['convini_flag']) { $this->convini_msg = "ここにコンビニ払い時のメッセージを記入。"; unset ($_SESSION['convini_flag']); } という形で情報を渡します。 更に、画面を構成するテンプレートである /data/Smarty/templates/default/shopping/complete.tpl のご希望の場所に、 <!--{$convini_msg}--> という形でSmarty変数として上記の文字列を渡してやれば、最終画面で設定したい文言を表示できるのではないでしょうか。 なお、支払い方法は [payment_id] => 3 [payment_method] => 銀行振込 のように文字列だけでなくIDでも判別できますので、その方がスマートな気もします。 |
FUDO |
投稿日時: 2012/4/24 18:39
対応状況: 確認中
|
半人前 登録日: 2011/9/27 居住地: 投稿: 23 |
Re: 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい dimaggio 様、再度ご返信ありがとう御座います。
色々と試してみましたが、ご提示頂いた方法では表示させる事が出来ませんでした。 LC_Page_Shopping_Confirm.phpのcase 'confirm':の// 購入完了ページの上の行に if ($this->arrForm['payment_method'] == "コンビニ払い") { $_SESSION['convini_flag'] = 1; } を入れ、LC_Page_Shopping_Complete.phpの function init() { parent::init(); $this->tpl_title = "ご注文完了"; } の$this->tpl_title = "ご注文完了";の下の行に if ($_SESSION['convini_flag']) { $this->convini_msg = "ここにコンビニ払い時のメッセージを記入。"; unset ($_SESSION['convini_flag']); } を入れました。 誠に申し訳御座いませんが、再度お教え頂けないでしょうか。 よろしくお願い致します。 |
dimaggio |
投稿日時: 2012/4/24 19:40
対応状況: −−−
|
一人前 登録日: 2011/3/30 居住地: Tokyo 投稿: 120 |
Re: 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい 説明が不十分ですみません。
うまくいかない症状は白い画面でしょうか? それとも最終画面で期待した文字列が出ない状態でしょうか? LC_Page_Shopping_Confirm.php 内に挿入する if ($this->arrForm['payment_method'] == "コンビニ払い") { $_SESSION['convini_flag'] = 1; } の部分は、 $objSiteSess->setRegistFlag(); という行と、 // 決済モジュールを使用する場合 という行の間では如何でしょうか。 また、 /data/Smarty/templates/default/shopping/complete.tpl への <!--{$convini_msg}--> の記述はしてありますでしょうか。 この状態で、わたくしが試した状態と同じになると思います。 |
FUDO |
投稿日時: 2012/4/26 15:24
対応状況: 解決済
|
半人前 登録日: 2011/9/27 居住地: 投稿: 23 |
Re: 【Ver.2.11.1】コンビニ決済受注メールの『情報』を変更したい dimaggio 様、何度もお返事頂きありがとう御座います。
うまくいかない症状は最終画面で期待した文字列が出ない状態でした。 しかし上に記して頂いた通りに変更した所、無事にコンビニ決済の『ご注文完了』画面に 注意書きを表示させる事が出来ました。 今回、何度も聞き返す事になってしまい、誠に申し訳ありませんでした。 本当にありがとう御座いました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |