【问题标题】:Onepage checkout breakes after shop update商店更新后单页结帐中断
【发布时间】:2015-12-03 19:31:19
【问题描述】:
我将一家 magento 商店更新到 1.9.2 版,一切正常,只是客户无法完成结帐流程。
当他们尝试点击最终的发送/订购按钮时,什么也没有发生。我可以看到向http://shopurl/checkout/onepage/saveOrder/ 发出的ajax 请求被重定向到http://shopurl/checkout/onepage/,但没有其他任何反应。我在后台也看不到订单。
经过一番研究,我看到一些帖子说我应该改变
<fieldset>
到
<fieldset id="checkout-payment-method-load">
但这并没有改变任何东西。
编辑 1: 我尝试切换到默认布局,一切正常。问题必须在我们的自定义主题内。我会继续在那里搜索并报告。
【问题讨论】:
标签:
php
ajax
magento
updates
shop
【解决方案1】:
那么您的答案是您的主题中更可能有结帐/持久性覆盖。通常这些都缺少表单键,并且从那时起 opc JavaScript 发生了相当大的变化,这也允许您完成结帐步骤。
在您的主题中是否覆盖了模板/结帐或模板/持久性。控制台中是否有任何 JavaScript 错误?
开始只需简单地重命名模板/结帐文件夹和 checkout.xml 以及文件夹模板/持久性。我敢打赌你的问题就在这里。如果我们发现问题。我对最终解决方案有一些好主意。
告诉我。
【解决方案2】:
我能够使用answer 解决问题。我不得不改变
<script type="text/javascript">
//<![CDATA[
review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder') ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));
//]]>
</script>
到这里
<script type="text/javascript">
//<![CDATA[
review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder', array('form_key' => Mage::getSingleton('core/session')->getFormKey())) ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));
//]]>
</script>
在template/checkout/onepage/review/info.phtml