在magento中,来自子类别的所有产品都显示在顶级/父级类别上。例如,我有这组类别:
Fabric
- Cotton
---- Shirts (1)
--------Half Sleeves (5)
总而言之,我有6个产品,当我点击面料时,它会显示所有6个产品以及子类别。
我不想要这个,我想只列出类别,不想从子类别中提取产品。
因此,当我点击 Fabric 时,我想要一种只能列出子类别的方法或方法。当我点击半袖时,只列出5种产品。
顺便说一句,我的所有类别都已设置为是Anchor = NO 。
以下是app / design / frontend / base / default / template / catalog / category / view.phtml的片段
$_cat = new Mage_Catalog_Block_Navigation();
$curent_cat = $_cat->getCurrentCategory();
$curent_cat_id = $curent_cat->getId();
$parentId=Mage::getModel('catalog/category')->load($curent_cat_id)->getParentId();
$categoryid = $parentId;//$_category->getId();
$category = new Mage_Catalog_Model_Category();
$category->load($categoryid);
$collection = $category->getProductCollection();
$collection->addAttributeToSelect('*');
$i=0;
foreach ($collection as $_product) {........}
有什么想法吗?
非常感谢!
答案 0 :(得分:2)
你好Aamir Siddique每次尝试这个功能都会得到孩子,所以点击面料你必须将面料的id传递给这个功能才能得到它的孩子类别,这里我给你的功能让你可以得到孩子阵列
function get_child($category_id)
{
$id=$category_id;
$i=0;
$children = Mage::getModel('catalog/category')->getCategories($id);
foreach ($children as $category)
{
$data["cat_data"][$i]["id"]=$category->getId();
$data["cat_data"][$i]["name"]=$category->getName();
$i++;
}
return $data;
}
答案 1 :(得分:0)
您是否尝试将Display Mode
类别的Fabric
更改为Static block only
,然后创建一个包含子类别链接的静态块?