Magento Onepage Checkout错过了一步

时间:2010-09-10 14:01:36

标签: php magento checkout

我们有一个几乎已经准备就绪的magento商店,这已经产生了令人讨厌的问题。

在一页结帐时,其中一个步骤已经丢失!尽管存在于Mage_Checkout_Block_Onepage-> getSteps()方法内的值数组中,“运送”选项卡也不会显示。我们已经尝试了一切来弄清楚什么是错的,但由于某种原因,它只是拒绝显示,并且不存在于HTML中 - 所以我确定它是服务器端问题,而不是缺少ID页面,或javascript问题。

class Mage_Checkout_Block_Onepage extends Mage_Checkout_Block_Onepage_Abstract
{
    public function getSteps()
    {
        $steps = array();

        if (!$this->isCustomerLoggedIn()) {
            $steps['login'] = $this->getCheckout()->getStepData('login');
        }

        $stepCodes = array('billing', 'shipping', 'shipping_method', 'payment', 'review');

        foreach ($stepCodes as $step) {
            $steps[$step] = $this->getCheckout()->getStepData($step);
        }
        return $steps;
    }
// etc etc
}

(来自/app/code/core/Mage/Checkout/Block/Onepage.php)

代码根本不是自定义的,超出了本地内部的皮肤和一些非常轻的自定义代码......这让我们有点疯狂!有任何想法吗?直到最近才开始工作..我们尝试在新的magento设置上重新安装我们的代码,但仍然是..

e:完成“结算信息”标签页面上有一个javascript错误,但似乎是因为Magento没有正确加载代码。错误是:

Error: $("shipping:same_as_billing") is null

基本上,页面中没有ID,这与正在发生的事情一致。

ee:表单元素不存在。与没有这个问题的项目的旧版本相比(也不是几周的开发......),这个输入被加载到不显示/加载的标签内..或任何东西。

eee:我仍然遇到这个问题。

2 个答案:

答案 0 :(得分:1)

我要检查的第一件事是Magento将设置捕获运输信息(我似乎记得一些配置选项将其关闭),并且您添加到购物车的物品是正常物品(不可下载) /虚拟物品,不应捕获运输信息。)


根据您的编辑,它正在查找不存在的表单字段(似乎是允许用户选择是否输入单独的帐单邮寄地址的复选框)。你能确认这个表格输入是否存在并且是否以表格形式发送?

答案 1 :(得分:0)

结果是布局出了问题。回到原始主题使步骤出现。如果不了解更多关于magento的工作方式,我就无法提供更多细节,但希望这对某人有所帮助。