【问题标题】:Magento: Show the Review Step in One Page CheckoutMagento:在一页结帐中显示审核步骤
【发布时间】:2011-04-24 10:09:47
【问题描述】:

我一生都无法弄清楚这一点。我想立即在 Magento 的单页结账时显示订单审核步骤(处理订单前的最后一步)。有什么建议?谢谢大家。

【问题讨论】:

  • 您还想在结帐结束时查看订单吗?
  • 好吧,我希望它出现在指定显示的空间中。无需完成所有步骤才能显示它,它只会在加载一页结帐时立即显示。我知道它被填充到 div #checkout-review-load 中。我似乎无法弄清楚我需要在页面加载时调用哪一段 JS 代码才能让它显示出来。

标签: ajax magento prototypejs checkout


【解决方案1】:

如果你查看 onepage.phtml 的底部,你会看到

<?php if($this->getActiveStep()): ?>
   accordion.openSection('opc-<?php echo $this->getActiveStep() ?>');
<?php endif; ?>

调用Mage_Checkout_Block_Onepage::getActiveStep() 来确定首先显示哪个步骤。您可以通过在主题中创建自己的 onepage.phtml 并将上面的块更改为:

   accordion.openSection('opc-review');

然而,openSection 函数仅在本例中的目标元素('opc-review')具有“允许”类的情况下执行,该类由 Magento 的 AJAX 设置,一旦之前的结帐步骤完成。您可以使用原型手动添加“允许”类,但是一旦您获得要显示的步骤,您会看到它是空的,因为 AJAX 没有根据前面的步骤填充内容,因为前面的步骤没有还没有发生!

所以...您可以基于 Cart.php 创建一个新块,然后使用 $this-&gt;getChildHtml('block-id') 和布局 xml 将其插入 onepage.phtml。您需要将它作为li#opc-summary.section allow 或类似的东西插入到ol#checkoutSteps 中,并将上面的js 更改为accordion.openSection('opc-summary');

这是我目前能为你做的最好的事情。高温下, 京东

【讨论】:

  • 这是一个巨大的帮助,让我朝着正确的方向前进。谢谢乔纳森。
  • 很高兴它有帮助。我经常认为拥有它会很有帮助,只要它不会分散客户完成结账的注意力!
  • @JonathanDay 您能否就创建要在评论部分加载的内容块提供一些指导?当我尝试得到的是整个 html 页面,其中包含页眉页脚、css、js 全部。我的意思是它是结帐页面查看源内容的副本?
猜你喜欢
  • 1970-01-01
  • 2012-08-26
  • 1970-01-01
  • 2018-06-15
  • 1970-01-01
  • 1970-01-01
  • 2014-01-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多