1

我们有一家几乎完工的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:我仍然有这个问题。

4

2 回答 2

1

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


根据您的编辑,它正在寻找一个不存在的表单字段(似乎是让用户选择是否输入单独的帐单地址的复选框)。您能否确认此表单输入存在并与表单一起发送?

于 2010-09-10T14:30:53.703 回答
0

原来是布局有问题。回到原来的主题,步骤就出现了。在不了解 magento 的工作原理的情况下,我无法提供更多细节,但希望这对某人有所帮助。

于 2010-09-14T14:08:35.203 回答