我使用Joomla(2.5)和Virtuemart(2.6.14)创建了一个网站。我的问题是:
是否可以使用属于此类别的产品的缩略图填充类别视图缩略图? 我不想一张一张地将照片上传到类别,因为这需要花费大量的时间。 谢谢。
答案 0 :(得分:1)
您必须创建/components/com_virtuemart/sublayouts/categories.php
到/templates/your_template/html/com_virtuemart/sublayouts/categories.php
的模板覆盖。
并替换此代码(约行:74):
echo $category->images[0]->displayMediaThumb("",false);
使用:
$productModel = VmModel::getModel('product');
$prod_in_category = $productModel->getProductListing(false, 1, false, true, true, true, $category->virtuemart_category_id);
$productModel->addImages($prod_in_category[0],1);
if(!empty($prod_in_category[0]->images[0])){
echo $prod_in_category[0]->images[0]->displayMediaThumb("",false);
} else {
echo $category->images[0]->displayMediaThumb("",false);
}
你也可以使用这种采用随机图像的方法,但它会占用更多的内存,因为它使用了所有类别产品的数组。
$productModel = VmModel::getModel('product');
$prod_in_category = $productModel->getProductsInCategory($category->virtuemart_category_id);
$sel = array_rand($prod_in_category);
$productModel->addImages($prod_in_category[$sel],1);
if(!empty($prod_in_category[$sel]->images[0])){
echo $prod_in_category[$sel]->images[0]->displayMediaThumb("",false);
} else {
echo $category->images[0]->displayMediaThumb("",false);
}