我一生都无法弄清楚这一点。我想在 Magento 的单页结账时立即显示订单审核步骤(处理订单前的最后一步)。有什么建议么?谢谢大家。
问问题
5794 次
1 回答
3
如果你查看 onepage.phtml 的底部,你会看到
<?php if($this->getActiveStep()): ?>
accordion.openSection('opc-<?php echo $this->getActiveStep() ?>');
<?php endif; ?>
which 调用Mage_Checkout_Block_Onepage::getActiveStep()
以确定首先显示哪个步骤。您可以通过在主题中创建自己的 onepage.phtml 并将上面的块更改为:
accordion.openSection('opc-review');
但是,openSection 函数仅在本例中的目标元素('opc-review')具有“允许”类时执行,该类由 Magento 的 AJAX 设置,一旦完成先前的结帐步骤。您可以使用原型手动添加“允许”类,但是一旦您获得要显示的步骤,您会看到它是空的,因为 AJAX 没有根据前面的步骤填充内容,因为前面的步骤没有还没有发生!
所以...您可以基于 Cart.php 创建一个新块,然后使用$this->getChildHtml('block-id')
布局 xml 将其插入到 onepage.phtml 中。您需要将它插入到ol#checkoutSteps
asli#opc-summary.section allow
或类似的东西中,并使上面的 js 更改为accordion.openSection('opc-summary');
这是我目前能为你做的最好的事情。HTH, 法学博士
于 2010-10-18T05:53:51.453 回答