質問 > フロント機能 > 注文完了ページで注文番号や注文された商品名などを取得したい |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
rsws |
投稿日時: 2011/1/10 17:17
対応状況: −−−
|
新米 登録日: 2011/1/10 居住地: 投稿: 3 |
注文完了ページで注文番号や注文された商品名などを取得したい 表題の機能を入れてみようと思い、とりあえず一般的なECサイト(楽天やAmazonなど)で普通に表示されている注文番号の表示をしてみようと、complete.tplの一部を以下のように書き換えてみました。
【<!--{$arrInfo.shop_name|escape}-->の商品をご購入いただき、ありがとうございました。】 ↓ 【ご注文番号:<!--{$order_id}-->です。お問い合わせの際はこちらが必要になります】 と入れてみたのですが、【ご注文番号:です。お問い合わせの際は…】と、注文番号が表示されません。 <!--{$arrInfo.shop_name|escape}-->だけは○○店と、店舗名を返してきます。注文完了ページで、注文番号や、個別商品の商品名、注文数量などは、どうやれば表示されるのでしょうか? サイト内検索をしましたが、所望の記述が見当たらなかったためにご質問させていただきました。どなたかお分かりになる方がおられましたらお知恵をお貸し下さいませ。 |
bkmrk2009 |
投稿日時: 2011/1/10 18:56
対応状況: −−−
|
常連 登録日: 2009/7/26 居住地: 投稿: 67 |
Re: 注文完了ページで注文番号や注文された商品名などを取得したい こんばんわ
LC_Page_Shopping_Complete.phpを見ると、order_idはtpl側に 引き渡されていないようですので、LC_Page_Shopping_Complete.php でorder_idをテンプレート変数に加える必要があるかと思います。 その他の購入商品の詳細の表示は、データベースから情報を引き出す 必要があるかと思います。LC_Page_Mypage.phpなどが参考になるかと 思います。 毎度ながら外していたらスイマセン。 |
rsws |
投稿日時: 2011/1/10 19:54
対応状況: −−−
|
新米 登録日: 2011/1/10 居住地: 投稿: 3 |
Re: 注文完了ページで注文番号や注文された商品名などを取得したい ご返信していただきありがとうございます。
ご助言内容を実験してみました。 テンプレート変数?に加えるというのがどうやればよいか分からなかったのでgoogleで調べたところ、 ttp://07jzg8.blogspot.com/2010/01/ec-cube_30.html のサイトが見つかったので、それを参考に、 LC_Page_Shopping_Complete.phpの中の、購入完了処理と書かれていた *function lfDoComplete(&$objQuery, $uniqid) { * *} ブロックの中に $objView = new SC_SiteView(); $name = “EC-CUBE” $objView->assign("NAME", $name); と追加し、shopping/complete.tplの中に<!--{$ NAME }-->さんこんにちは。と記述してテストしてみたところ、500エラーになりました。 追加する場所もしくは何かやり方が違うのでしょうか? |
bkmrk2009 |
投稿日時: 2011/1/10 22:02
対応状況: −−−
|
常連 登録日: 2009/7/26 居住地: 投稿: 67 |
Re: 注文完了ページで注文番号や注文された商品名などを取得したい こんにちわ
カレー食べ過ぎで、お腹がぁ... LC_Page_Shopping_Complete.phpの function process()の 完了メール送信処理の後ぐらいに $this->order_id = $order_id; を追加して、 tpl側で<!--{$order_id}--> で見れないでしょうか? 正しいかどうかは、不明ですが、間違っていたなら 別な方がスーパーフォローしてくれるでしょう。 |
rsws |
投稿日時: 2011/1/11 0:00
対応状況: 解決済
|
新米 登録日: 2011/1/10 居住地: 投稿: 3 |
Re: 注文完了ページで注文番号や注文された商品名などを取得したい 何度もご丁寧に教えていただきありがとうございます。
ご提示されたLC_Page_Mypage.phpと、$order_idの取得方法を教えていただいたことで、氷解するように分かりました。 注文データはフォームで持ちまわっているのでなく、DBで保持していたのですね。LC_Page_Mypage.phpの部分をコピーすると、何故か重大なエラー(?)になったので良くわからないところは削ってありますが、以下の実装で所望の結果が得られました。あとは加工だけですので何とかなりそうです。大変有意義なご助言ありがとうございました。 *****LC_Page_Shopping_Complete.php***** $this->order_id = $order_id; $col = "product_code, quantity, price"; $from = "dtb_order_detail"; $where = "order_id = $order_id"; $arrRet = $objQuery->select($col, $from, $where); for($i=0;$i<count($arrRet);$i++){ $this->items .= "&items=".$arrRet[$i]["product_code"] .",".$arrRet[$i]["quantity"] .",".$arrRet[$i]["price"]; } *****complete.tpl***** 注文番号:<!--{$order_id}--> 注文品:<!--{$items}--> *****表示***** 注文番号:a000233 注文品:&items=SC0001,2,1250 &items=SC0004,1,3550 &items=SC0013,3,2950 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |