Magento Paypal Express和标准代码差异-空篮
在magento上使用paypal时,有两个明确的选择,标准和快速 实际上,它们之间的区别很容易混淆,但其中一个主要区别是,paypal standard在重定向到paypal时立即完成订单,而express则没有 这本质上意味着用户篮在转移到paypal时使用paypal标准得到清除,如果他们单击后退,他们将没有篮 在代码中的哪个确切点发生这种情况 我可以在magento中看到两种付款方式:Magento Paypal Express和标准代码差异-空篮,magento,Magento,在magento上使用paypal时,有两个明确的选择,标准和快速 实际上,它们之间的区别很容易混淆,但其中一个主要区别是,paypal standard在重定向到paypal时立即完成订单,而express则没有 这本质上意味着用户篮在转移到paypal时使用paypal标准得到清除,如果他们单击后退,他们将没有篮 在代码中的哪个确切点发生这种情况 我可以在magento中看到两种付款方式: app\code\core\Mage\Paypal\Model\Express.php 及 但我看不
app\code\core\Mage\Paypal\Model\Express.php
及
但我看不出magento在哪里允许express继续订单基于代码快速检查的部分答案,也许这至少会为您指明正确的方向。让我知道你发现了什么,我会尝试做一些额外的挖掘,并提供更多的细节
// Mage_Paypal_StandardController
public function redirectAction()
{
$session = Mage::getSingleton('checkout/session');
$session->setPaypalStandardQuoteId($session->getQuoteId());
$this->getResponse()->setBody($this->getLayout()->createBlock('paypal/standard_redirect')->toHtml());
$session->unsQuoteId();
$session->unsRedirectUrl();
}
请注意,quote_id在签出/会话中未设置。那可能就行了
在Express controller中,我没有看到任何位置的quote\u id
未设置:
// Mage_Paypal_Controller_Express_Abstract
public function placeOrderAction()
{
...
}
部分答案基于对代码的快速检查,也许这至少会为您指明正确的方向。让我知道你发现了什么,我会尝试做一些额外的挖掘,并提供更多的细节
// Mage_Paypal_StandardController
public function redirectAction()
{
$session = Mage::getSingleton('checkout/session');
$session->setPaypalStandardQuoteId($session->getQuoteId());
$this->getResponse()->setBody($this->getLayout()->createBlock('paypal/standard_redirect')->toHtml());
$session->unsQuoteId();
$session->unsRedirectUrl();
}
请注意,quote_id在签出/会话中未设置。那可能就行了
在Express controller中,我没有看到任何位置的quote\u id
未设置:
// Mage_Paypal_Controller_Express_Abstract
public function placeOrderAction()
{
...
}
Express和Standard之间的实际流程不同 PayPal Express 用户在选择付款方式后(显然是在订单完成之前)直接被重定向到PayPal。在授权PayPal付款后,他们返回网站完成订单 贝宝标准 用户完成整个结账过程,并在现场完成订单。然后他们会被重定向到PayPal来整理付款。他们不需要回到网站来完成订单,因为在重定向到PayPal之前订单已经完成。这就是为什么无论您是否在PayPal支付,如果您返回该网站,您都会看到一个空篮子-报价已经转换为订单。 所以从这个意义上说,PayPal express本质上是一种结算方式,而PayPal标准则是一种支付方式
关于这一切发生在代码中的确切位置 PayPal Express 使用在-中调用的方法,以便在如上所述完成订单之前重定向 贝宝标准 使用在中调用的
请查看链接以了解所有事情发生的确切代码点。Express和Standard之间的实际流程不同 PayPal Express 用户在选择付款方式后(显然是在订单完成之前)直接被重定向到PayPal。在授权PayPal付款后,他们返回网站完成订单 贝宝标准 用户完成整个结账过程,并在现场完成订单。然后他们会被重定向到PayPal来整理付款。他们不需要回到网站来完成订单,因为在重定向到PayPal之前订单已经完成。这就是为什么无论您是否在PayPal支付,如果您返回该网站,您都会看到一个空篮子-报价已经转换为订单。 所以从这个意义上说,PayPal express本质上是一种结算方式,而PayPal标准则是一种支付方式
关于这一切发生在代码中的确切位置 PayPal Express 使用在-中调用的方法,以便在如上所述完成订单之前重定向 贝宝标准 使用在中调用的 请查看链接,了解所有事情发生的确切代码点