5

我正在尝试让用户在 Magento 中以编程方式结帐。我可以将它们发送给,$this->_redirect('checkout/onepage');但如果他们有某种第三方结帐扩展程序,我将不会使用正确的。有没有办法获取网站的默认结帐 url 并重定向到那里?

4

2 回答 2

21

你可以试试

$checkout_link = Mage::helper('checkout/url')->getCheckoutUrl();

此退货结帐链接在所有条件下

  • 在使用 OnePagecheckout 或 OneStepcheckout 等任何扩展程序时
  • 如果使用了扩展,它只返回基本的结帐 url
于 2013-11-19T11:25:53.263 回答
4

默认情况下,结帐链接由类的getCheckoutUrl()函数返回Mage_Checkout_Block_Onepage_Link。如果很简单:

public function getCheckoutUrl()
{
    return $this->getUrl('checkout/onepage', array('_secure'=>true));
}

3rd 方扩展很可能会覆盖这个类(我检查了 OneStepCheckout 1.4,它的工作原理是这样的)。

于 2012-07-14T20:57:11.443 回答