4

大家好,

提前致谢。
我是opencart的新手,目前正在opencart中开发一个购物车,一切都很顺利,但我卡住了,请帮忙

我想访问 checkout.tpl 中当前添加的购物车项目以生成查询表单,因此我正在编辑 controller/checkout.php 并添加这些代码行以访问当前在购物车中的产品详细信息:

    //Product detail for Enquiry    
    $product_data = array();

    foreach ($this->cart->getProducts() as $product) {
        $option_data = array();

        foreach ($product['option'] as $option) {
            if ($option['type'] != 'file') {
                $value = $option['option_value'];   
            } else {
                $value = $this->encryption->decrypt($option['option_value']);
            }   

            $option_data[] = array(
                'product_option_id'       => $option['product_option_id'],
                'product_option_value_id' => $option['product_option_value_id'],
                'option_id'               => $option['option_id'],
                'option_value_id'         => $option['option_value_id'],                                   
                'name'                    => $option['name'],
                'value'                   => $value,
                'type'                    => $option['type']
            );                  
        }

        $product_data[] = array(
            'product_id' => $product['product_id'],
            'name'       => $product['name'],
            'model'      => $product['model'],
            'option'     => $option_data,
            'download'   => $product['download'],
            'quantity'   => $product['quantity'],
            'subtract'   => $product['subtract'],
            'price'      => $product['price'],
            'total'      => $product['total'],
            'tax'        => $this->tax->getTax($product['price'], $product['tax_class_id']),
            'reward'     => $product['reward']
        ); 
    }

    $data['products'] = $product_data;

然后在 checout/checkout.tpl 中添加一行:

    foreach ($products as $product)
    {
        echo 'yes am getting products details';
    }

但仍然出现错误:未定义的变量:产品?

我做对了吗?请纠正我。

4

1 回答 1

4

您所做的几乎是正确的,但是您使用过

$data['products'] = $product_data;

你应该放在哪里

$this->data['products'] = $product_data;
于 2012-09-13T13:01:52.423 回答