4

商品がない場合、空のカテゴリとサブカテゴリを削除するものを実装したいと考えています。

何百ものカテゴリが存在する可能性があるため、これにはバックエンドを使用したくありません。

困っています助けてください。

このリンク「空のカテゴリを非表示にする」を参照していますが、これは、サブカテゴリに製品が含まれていても、ナビゲーションバーから親カテゴリを非表示にするだけです.

4

1 に答える 1

10

空のカテゴリを削除する1つの方法は次のとおりです...

$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". 

ここを参照してください

この単純なタスクのスクリプトを作成する方がよいでしょう。 スクリプトを実行するためにMagentoをブートストラップする方法を説明するための優れたリソースがあります。

于 2012-08-31T06:50:37.997 に答える