代码之家  ›  专栏  ›  技术社区  ›  danp

Magento Onepage签出缺少一个步骤

  •  1
  • danp  · 技术社区  · 14 年前

    我们有一个几乎完成准备去magento商店,这已经发展成一个恼人的问题。

    在单页签出中,有一个步骤丢失了!“shipping”选项卡尽管存在于Mage\u Checkout\u Block\u 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)/网页.php)

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

    e:在完成“账单信息”选项卡时,页面上出现了一个javascript错误,但似乎是因为Magento没有正确加载代码。错误是:

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

    基本上,ID不在页面中,这与正在发生的事情相吻合。

    ee:表单元素不存在。与一个没有这个问题的老版本的项目相比(也不是几个星期的开发时间)。。。=),此输入被加载到不显示/加载的选项卡中。。或者别的什么。

    我对这个还有意见。

    2 回复  |  直到 12 年前
        1
  •  1
  •   Joe Mastey    14 年前


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

        2
  •  0
  •   danp    14 年前

    原来是布局有问题。回到原来的主题使步骤出现。在不了解magento如何工作的情况下,我不能给出更多的细节,但希望这能帮助一些人。