2
我寫一個自定義的Magento 1.5.0.1一頁簽出我的網站下面這個網站上說明: http://inchoo.net/ecommerce/magento/magentos-onepage-checkout-in-a-nutshell/不能在Magento一頁saveShippingMethod結帳
總之,我爲了調用這些函數:
$checkout = Mage::getSingleton(‘checkout/type_onepage’);
$checkout->saveCheckoutMethod(‘guest’);
$checkout->saveBilling($billingAddress, false);
$checkout->saveShipping($shippingAddress, false);
$checkout->saveShippingMethod(‘flatrate_flatrate’);
$checkout->savePayment(array(‘method’=>’checkmo’));
// Extra part not on the site but saw it in the original magento onpage checkout controller
$checkout->getQuote()->getPayment()->importData(array(‘method’=>’checkmo’));
//
$checkout->saveOrder();
// Extra part not on the site but saw it in the original magento onpage checkout controller
$checkout->getQuote()->save();
//
問題是,當代碼第一次運行時,運輸方法沒有被設置,我得到一個錯誤,說沒有設置運輸方法。但是,刷新頁面會使訂單通過。
一種解決方案是設置與saveShippingMethod的送貨方式,檢查它是否與設置之後:
Mage::getSingleton('checkout/type_onepage')->getQuote()->getShippingAddress()->getShippingMethod();
哪個時間的100%它不是,然後重定向它返回到相同的頁面,這在第二次運行的運輸方式設置...
這似乎是這樣一個愚蠢的magento錯誤!有關如何使用此重定向修復它的任何想法(即頁面刷新)?
您是否找到解決方案,因爲我有同樣的問題? – Orhan