2012-08-31 31 views
4

我想实现一些将删除空的类别和子类别,如果其中没有产品。删除magento中的空白类别

可能有100个类别。所以我不想为此使用后端。

我有麻烦请帮帮我。

我指的是这个链接Hide Empty Categories但这只是隐藏导航栏中的父类别,即使它的子类别中有产品。

回答

10

这里是一个办法删除空类别...

$categoryCollection = Mage::getModel('catalog/category')->getCollection() 
    ->addFieldToFilter('level', array('gteq' => 2)) 
; 

foreach($categoryCollection as $category) { 
    if ($category->getProductCount() === 0) { 
     $category->delete(); 
    } 
} 

这将删除类别 - 不是简单地隐藏起来


编辑

要回答以下评论中发布的内容:

"Could you please share a link of some tutorial or weblink.I am weak in creating custom modules". 

see here

你会过得更好只是创造这个简单的任务的脚本。 Here is a nice resource来解释如何引导您的脚本运行Magento。

+0

请您分享一些教程或weblink的链接。我很难创建自定义模块。 – Muk

+0

您能否告诉我如何以及在何处实施此代码。 – Muk

+0

我指的是这个链接“http://prattski.com/2011/10/06/magento-module-hide-empty-categories/”,但这只是从导航栏隐藏父类别,即使它的子类别有产品在他们。 – Muk