我試圖創建一些功能,允許我根據類別和屬性值等條件任意顯示產品集合,並按預期工作,但我也希望能夠排除某些類別我可以包含'默認分類',然後排除任何我不想要的子分類。似乎沒有像addCategoryFilter($ catid)這樣的方法。Magento - 如何從產品集合中排除類別?
我發現一個similar question that had been answered,但無法讓它爲我工作。
$catId = 9;
/* I'm almost positive 'e' is the alias used for catalog_product_entity, check your
query with echo (string) $products->getSelect(); if it doesn't work */
$products->getSelect()->join(array('cats' => 'catalog_category_product'), 'cats.product_id = e.entity_id');
$products->getSelect()->where('cats.category_id', array('neq' => $catId));
有沒有其他人有過這樣的事情嗎?
我我一直試圖使用上面的代碼,如下所示:public function excludeCategory($ productCollection,$ catId){ \t if($ catId){ \t \t $ productCollection-> getSelect() - > join(array('cats'=>'catalog_category_product'),'cats.product_id = e.entity_id'); ('cats.category_id',array('neq'=> $ catId));其中('cats.category_id',數組('neq'=> $ catId)); \t} \t return $ productCollection; } 在/local/mage/catalog/block/product/whatsnew.php這是'類Mage_Catalog_Block_Product_Whatsnew擴展Mage_Catalog_Block_Product_Abstract'。 – gpcola
正如我所說,當我嘗試使用該功能時,我的產品模塊消失,並且沒有創建錯誤日誌,以便爲我提供線索,看看爲什麼會發生這種情況 – gpcola