1ページのチェックアウトに戻るときにMagentoで見積もりを復元するにはどうすればよいですか?
-
11-10-2019 - |
質問
Magento Enterpriseを使用しており、DataCash 3D Secure Payun Moduleを使用しています。
支払いプロセス中にエラーが発生した場合、ユーザーがバスケットを無傷で1ページのチェックアウトに戻したいと思います。現在、ユーザーがチェックアウトに戻ると、バスケットは空になっているため、アイテムがないため「チェックアウト/カート」に転送されます。
コードの問題であると思ったので、最初の支払いアクションがすぐにリダイレクトされ、1つのページのチェックアウトに戻りました。
public function redirectAction() {
Mage::getSingleton('core/session')->addError("There was a problem with the payment gateway. Please try again");
$session = Mage::getSingleton('checkout/session');
return $this->_redirect('checkout/onepage/', array('_secure'=>true));
}
ただし、チェックアウトページに戻ると、バスケットは空です。次のログを1つのページチェックアウトのインデックスに追加すると、「引用」が表示されます。データベースを見ると、引用のアクティブステータスが0に設定されています。
error_log("Quote ".Mage::getSingleton('checkout/session')->getQuoteId());
私は標準的なMagentoでのみエンタープライズのみでこの問題に出くわしていません。誰かがこの問題に出くわしましたか?理想的には、顧客が再びバスケットに製品を追加する必要はありません。ある種のMagento Enterpriseモジュールと矛盾するようなものです。
助けてくれてありがとう!
解決
基本的にあなたはあなた自身の質問に答えました。見積もり(利用できない場合)を読み込み、これを実行します。
$yourQuote()->setIsActive(true);
所属していません StackOverflow