繁体   English   中英

Magento:如何隐藏儿童类产品在顶级类别中的显示?

[英]Magento: How to hide child-categories products from being displayed on top category?

在magento中,来自子类别的所有产品都显示在顶级/父级类别上。 例如,我有这组类别:

Fabric
- Cotton
---- Shirts (1)
--------Half Sleeves (5)

总共我有6个产品,当我点击面料时 ,它会显示所有6个产品以及子类别。

我不想要这个,我只想列出类别,不想从子类别中提取产品。

所以,我想要一种方法或方法,当我点击Fabric时,它只能列出子类别。 当我点击半袖时,只列出5个产品。

顺便说一下,我的所有类别都已设置为Is 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) {........}

有任何想法吗?

非常感谢!

你好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;
}

您是否尝试将Fabric类别的Display Mode更改为Static block only ,然后创建一个静态块,其中包含子类别的链接?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM