2015-11-03 75 views
1

我正在與Magento合作。所有我只想要一個按鈕,將產品添加到購物車,然後去檢查頁面不要查看購物車。意味着我要爲註冊用戶直接訂購。我正在PORTO Magento主題 我已經通過創建cartController.php的函數addAction到myaddAction()的副本來嘗試它。想要一個按鈕,將產品添加到購物車並將其重定向到結帳頁面,而不是查看購物車頁面:Magento

加入下面JS結束 view.phtml(應用程序/設計/前端/你的包/模板/模板/目錄/產品/ view.phtml)

productAddToCartForm.submitmy = function(button, url){ 
    replaceURL = url.replace("add/","myadd/"); 
     if(this.validator) { 
      var nv = Validation.methods; 
      delete Validation.methods['required-entry']; 
      delete Validation.methods['validate-one-required']; 
      delete Validation.methods['validate-one-required-by-name']; 
      // Remove custom datetime validators 
      for (var methodName in Validation.methods) { 
       if (methodName.match(/^validate-datetime-.*/i)) { 
        delete Validation.methods[methodName]; 
       } 
      } 

      if (this.validator.validate()) { 
       if (url) { 
        this.form.action = replaceURL; 
       } 
       this.form.submit(); 
      } 
      Object.extend(Validation.methods, nv); 
     } 
    }.bind(productAddToCartForm); 

和在改變的addAction到myaddAction車控制器也改變

$this->_goBack(); 
to 
$this->_redirect('checkout/onepage'); 
     return; 

但我得到一個錯誤未定義funtion, productAddToCartForm.submitmy

請希望有人幫忙。

回答

0

我會在add_to_cart_after上創建一個觀察者,然後在這裏設置一個重定向。簡單如下:

$response = $observer->getResponse(); 
$url = Mage::helper('checkout/url')->getCheckoutUrl(); 
$response->setRedirect($url); 
die();