我对opencart很新,我正在开发一个我需要能够在购物车内显示产品属性的商店。我全身心地搜查,但显然没有人需要这个功能。 我简短,我试图复制产品页面中检索属性的方式,但没有成功。 我修改了控制器添加这一行:
$this->data['attribute_groups'] = $this->model_catalog_product->getProductAttributes($this->request->get['product_id']);
我还补充说:
<?php foreach ($attribute_groups as $attribute_group) { ?>
<?php echo $attribute_group['name']; ?>
<?php foreach ($attribute_group['attribute'] as $attribute) { ?>
<?php echo $attribute['name']; ?>
<?php echo $attribute['text']; ?>
<?php } ?>
<?php } ?>
<?php } ?>
没有成功。 我想我必须以某种方式修改system / library / cart.php。问题是我不够精明,不知道该怎么做! 此时我决定在这里寻求帮助! 有什么想法吗?
答案 0 :(得分:0)
这并不像表面看起来那么难,你只需要编辑2个文件并打开3。
- 1--将用于检索属性的方法添加到购物车类。
打开目录/ model / catalog / product.php
找到方法getProductAttributes($product_id)
并将整个方法复制到剪贴板。
打开system/library/cart.php
,然后在getProducts()
方法粘贴您复制的方法。
- 2--就在您粘贴代码的位置上方,在getProducts()
方法的末尾,您将看到为视图构建products数组的位置,它看起来类似于:
$this->data[$key] = array(
'key' => $key,
'product_id' => $product_query->row['product_id'],
'name' => $product_query->row['name'],
'model' => $product_query->row['model'],
'shipping' => $product_query->row['shipping'],
'image' => $product_query->row['image'],
'option' => $option_data,
'download' => $download_data,
'quantity' => $quantity,
'minimum' => $product_query->row['minimum'],
'subtract' => $product_query->row['subtract'],
'stock' => $stock,
'price' => ($price + $option_price),
'total' => ($price + $option_price) * $quantity,
'reward' => $reward * $quantity,
'points' => ($product_query->row['points'] ? ($product_query->row['points'] + $option_points) * $quantity : 0),
'tax_class_id' => $product_query->row['tax_class_id'],
'weight' => ($product_query->row['weight'] + $option_weight) * $quantity,
'weight_class_id' => $product_query->row['weight_class_id'],
'length' => $product_query->row['length'],
'width' => $product_query->row['width'],
'height' => $product_query->row['height'],
'length_class_id' => $product_query->row['length_class_id']
);
现在只需将对该getAttributes方法的调用添加到数组中:
'attributes' => $this->getProductAttributes($product_query->row['product_id'])
现在打开您的购物车模板:catalog/view/theme/yourtheme/common/cart.tpl
,在产品选项循环的位置,您现在可以像选项一样遍历您的属性。