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

有帮助吗?

解决方案

如果您查看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');

但是,在这种情况下,仅当目标元素('opc-Review')时,开放函数仅执行,在这种情况下,一类“允许”类,该类是由Magento的Ajax设置的,一旦完成了先前的结帐步骤。您可以使用原型手动添加“允许”类,但是一旦显示出要显示的步骤,您就会看到它是空的,因为Ajax并未根据以前的步骤填充内容,因为以前的步骤Haven' t发生了!

因此...您可以根据cart.php创建一个新块,然后使用该块插入onepage.phtml $this->getChildHtml('block-id') 和布局XML。您需要将其插入 ol#checkoutSteps 作为一个 li#opc-summary.section allow 或类似的东西,并使JS更改为 accordion.openSection('opc-summary');

这是我目前可以为您做的最好的事情。 Hth,JD

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top