在我的Magento商店,我启用了Onepage结帐和Paypal模块 . 当一些客户选择Paypal选项作为支付方式并完成订单时,他们将被重定向到Paypal网站(在这里您可以登录Paypal或结账为paypal客人或取消并返回我的magento商店) . 当客户选择最后一个“取消并返回我的magento商店”时,他们将被重定向到标准购物车,而不是我希望的Onepage结帐 . 也许有什么建议?
谢谢 .
我现在没有Magento在我的驱动器上查看确切的目录结构,但在PayPal结账模块中,他们在进行SetExpressCheckout调用时为ReturnURL设置一个值 .
您需要编写一个模块来覆盖他们自己使用正确URL的SEC请求,或者他们可能已经有一个专门用于生成ReturnURL的方法,因此您可以覆盖它 .
您可以创建一些逻辑来根据商家选择的结帐类型生成URL,这似乎是他们的核心模块缺失的 .
我在app \ code \ core \ Mage \ Checkout \ controllers \中找到了这个
protected function _goBack() { $returnUrl = $this->getRequest()->getParam('return_url'); if ($returnUrl) { // clear layout messages in case of external url redirect if ($this->_isUrlInternal($returnUrl)) { $this->_getSession()->getMessages(true); } $this->getResponse()->setRedirect($returnUrl); } elseif (!Mage::getStoreConfig('checkout/cart/redirect_to_cart') && !$this->getRequest()->getParam('in_cart') && $backUrl = $this->_getRefererUrl() ) { $this->getResponse()->setRedirect($backUrl); } else { if (($this->getRequest()->getActionName() == 'add') && !$this->getRequest()->getParam('in_cart')) { $this->_getSession()->setContinueShoppingUrl($this->_getRefererUrl()); } $this->_redirect('checkout/cart'); } return $this; }
您是否想修改此代码以更正URL(checkout / cart /)?
我找到了解决方案,我希望这个解决方案可以帮到你 .
在app \ code \ core \ Mage \ Paypal \ Controller \ Express \ Abstract.php中
行号152.有重定向代码 . 将其改为以下 .
$this->_redirect('checkout/onepage/');
这将完成你的工作 .
3 回答
我现在没有Magento在我的驱动器上查看确切的目录结构,但在PayPal结账模块中,他们在进行SetExpressCheckout调用时为ReturnURL设置一个值 .
您需要编写一个模块来覆盖他们自己使用正确URL的SEC请求,或者他们可能已经有一个专门用于生成ReturnURL的方法,因此您可以覆盖它 .
您可以创建一些逻辑来根据商家选择的结帐类型生成URL,这似乎是他们的核心模块缺失的 .
我在app \ code \ core \ Mage \ Checkout \ controllers \中找到了这个
您是否想修改此代码以更正URL(checkout / cart /)?
我找到了解决方案,我希望这个解决方案可以帮到你 .
在app \ code \ core \ Mage \ Paypal \ Controller \ Express \ Abstract.php中
行号152.有重定向代码 . 将其改为以下 .
这将完成你的工作 .