質問 > フロント機能 > 条件を満たせば自動的にプレゼントを追加することは、出来たのですが・・・ |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
allure |
投稿日時: 2015/7/30 19:27
対応状況: −−−
|
半人前 登録日: 2014/1/21 居住地: 投稿: 18 |
条件を満たせば自動的にプレゼントを追加することは、出来たのですが・・・ 下記の条件を満たす場合に記念品をプレゼントする企画があり、
購入手続きの最終確認画面にて、条件を満たしていれば自動的に購入商品リストに プレゼント商品を追加するようにしたいと思います。 ・購入金額が◯◯円以上 ・先着◯◯名の方 ・一人一回限り 準備として・・・ ●プレゼント商品は通常の商品として登録することで、 在庫数、販売制限数を設定して自動的に管理できるようにする ●「プレゼント」カテゴリーに入れ、カテゴリー表示をしないように設定する ここまではいいのですが、 LC_Page_Shopping_Confirm_Ex.php ファイルに関数(下に添付)を作成し、 いろいろテストしている内に問題が出てきました。 条件を満たし、プレゼント商品が追加された後、最終確認画面からカートの中身に戻った場合、 プレゼント商品がリストされているのは問題ないのですが、 ここでプレゼント以外の商品を削除し、プレゼントの条件を満たさなくなった場合に プレゼントがそのまま残ってしまうのが問題です。 そこで、最終確認画面で、条件に満たないのにカートにプレゼントが入っている場合に プレゼントを削除するようにしようと思いました。 これがなかなか思うように動かず困っています。 カートに戻って以下の様な操作をした(かつプレゼント条件を満たしていない)場合の 最終確認画面での動作は次のようになりました。 ●何か商品を削除した場合 --> プレゼントは削除されません。 ●商品の数量を変更した場合 --> プレゼントは削除されません。 ●何か商品を削除し、別の商品を追加した場合 --> プレゼントが削除されます。(希望通り) 新たに商品が追加された場合だけ、思い通りプレゼントが削除されるということは、 キャッシュとかが関係するのでしょうか? 何かを更新する操作を入れればいいのでしょうか? ここから進めずギブアップ状態です。 どなたかヒントでも頂ければと思い投稿させていただきました。 何卒よろしくお願いいたします。m(_ _)m LC_Page_Shopping_Confirm_Ex.php ▼action の「カートの商品を取得」の前に関数を呼び出し
▼関数の内容は以下のとおりです。
--------------------------------------------------------------- [EC-CUBE] 2.13.3 [レンタルサーバ] ローカルにてテスト中 [OS] Mac + MAMP [PHP] PHP 5.2.17 [データベース] MySQL 5.5.29 --------------------------------------------------------------- |
yuh |
投稿日時: 2015/7/30 22:57
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 条件を満たせば自動的にプレゼントを追加することは、出来たのですが・・・ SC_CartSessionのcheckChangeCartに仕込んで
金額のチェックとプレゼントの追加・削除を仕込んでおけばできますよ。 一応商品詳細でその商品IDを入れても表示させないようにするのも入れといた方がいいかもですね。 |
allure |
投稿日時: 2015/7/31 17:43
対応状況: −−−
|
半人前 登録日: 2014/1/21 居住地: 投稿: 18 |
Re: 条件を満たせば自動的にプレゼントを追加することは、出来たのですが・・・ 早速のお返事ありがとうございます。
やってみます。 |
allure |
投稿日時: 2015/8/4 15:15
対応状況: −−−
|
半人前 登録日: 2014/1/21 居住地: 投稿: 18 |
Re: 条件を満たせば自動的にプレゼントを追加することは、出来たのですが・・・ その後、いろいろ試してみているのですが思うように動かず、
いっそのこと、カートの中身を表示するページでは プレゼントを表示しない(削除してしまう)ようにしようと考えました。 (最終画面でのプレゼント追加は問題なく動いているので。) そこで、LC_Page_Cart_Ex.php ファイルで、 ページを表示する前にプレゼントがあれば削除しようと試みましたが、 上手く行かず、ならば、表示した後、商品の削除や数量を減らした時に 消してしまえないかと、switch の case down と delete に挿入してみました。 これをテストしたところ、既にカートに入っている商品を操作してもプレゼントは削除されず、 新たに商品を追加した後に、いずれかの商品(先にカートにあった商品でも)を削除 or 減数した場合は プレゼントが削除されました。 恐らく、最初の問題もここにありそうです。(^_^;) プレゼント追加の後に、新たに商品がカートに追加されたか否かで動作が変わります。 これについて、何か対処方法はありますでしょうか? ▼ LC_Page_Cart_Ex.php の action の一部(★追加部分を挿入)
▼ 作成した deletePresent
|
yuh |
投稿日時: 2015/8/5 1:11
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: 条件を満たせば自動的にプレゼントを追加することは、出来たのですが・・・ 一応望む条件で動作するはずですが、細かくは調べてません。 めんどくさかったので若干負荷の高くなるように組んでます。 負荷を下げる方向で行くのであればいろいろ試して作り変えてください。 |
allure |
投稿日時: 2015/8/5 15:40
対応状況: 解決済
|
半人前 登録日: 2014/1/21 居住地: 投稿: 18 |
Re: 条件を満たせば自動的にプレゼントを追加することは、出来たのですが・・・ わ!ソース書いて頂いて恐縮です。m(_ _)m
気持よく動きました!(^^) とても勉強になります。 ありがとうございました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |