我使用的是opencart(1.5.6.4),想知道如何在每个产品下显示额外的产品数据,特别是我想显示产品isbn和mpn。
我不确定如何制作isbn&mpn可在我的分类.tpl 的产品循环中访问
例如,我希望能够使用以下行的内容来显示数据:
echo $product['mpn'];
echo $product['isbn'];
我确信这个问题已经被问了很多次,或者在互联网上的某个地方得到了解决,尽管谷歌现在无法为我提供正确的结果。。。
这里只有一个简短的操作方法:
编辑catalog/model/catalog/product.php
模型并在SQL中搜索方法getProducts()
-也提供要选择的属性。查找
$sql = "SELECT p.product_id, ... AS special";
并将其更改为
$sql = "SELECT p.product_id, ... AS special, p.isbn, p.mpn";
假设这两个属性被保存在CCD_ 3表中。
编辑catalog/controller/product/category.php
控制器并搜索填充和处理产品数据的循环,直到它最终被分配给最终的产品阵列,看起来像:
$this->data['products'][] = array(
'product_id' => $result['product_id'],
'thumb' => $image,
// ...
);
在这里你需要添加你的新属性:
$this->data['products'][] = array(
'product_id' => $result['product_id'],
'thumb' => $image,
// ...,
'isbn' => $result['isbn'],
'mpn' => $result['mpn'],
);
然后,在您的模板(category.tpl
)中,您可以使用问题中的代码在foreach
循环中轻松地显示它们(确保将其调整为正确的HTML)。