當訪客用戶已經添加地址時,我必須從步驟1(選擇結賬方法)移至發貨方式步驟。我已經在方法saveCheckoutMethod的覆蓋類Mage_Checkout_Model_Type_Onepage中嘗試了以下代碼。然而,這是行不通的,客人去帳單地址步驟,但消息「設置步shipping_method。」。打印到Magento日誌。有沒有什麼辦法可以直接進入運輸方法步驟並以編程方式跳過兩個地址步驟?Magento在結賬時跳過兩步
public function saveCheckoutMethod($method)
{
if (empty($method)) {
return array('error' => -1, 'message' => $this->_helper->__('Invalid data.'));
}
$this->getQuote()->setCheckoutMethod($method)->save();
$quote = $this->getQuote();
if($quote->getBillingAddress()->validate() && $quote->getShippingAddress()->validate())
{
$this->getCheckout()
->setStepData('billing', 'complete', false)
->setStepData('shipping', 'complete', false)
->setStepData('shipping_method', 'allow', true);
Mage::log("Setting step shipping_method.");
}
else
{
$this->getCheckout()->setStepData('billing', 'allow', true);
}
return array();
}
轉到與此http://stackoverflow.com /問題/ 1718293 /鏈接到一個特定的步在-onepage結帳。要保留結帳步驟,請使用cookie。 – 2013-01-08 06:58:14