首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Magento -如何使用2个类别的过滤器过滤一个产品集合?

问Magento -如何使用2个类别的过滤器过滤一个产品集合?
EN

Stack Overflow用户
提问于 2009-11-12 21:02:14
回答 2查看 19.4K关注 0票数 7

是否有人知道是否有办法通过类别筛选器两次运行产品集合?我有一个“特色”类别,这是隐藏的,我添加产品,以便他们可以抓取作为特色产品。目前,我的产品系列如下:

代码语言:javascript
复制
$_productCollection = Mage::getResourceModel('reports/product_collection')
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('visibility', $visibility)
    ->addCategoryFilter('36');
    $_productCollection->load();

这在主页上运行得很好,但在类别页面上,我需要先按当前类别筛选结果,然后再按功能类别过滤结果:

代码语言:javascript
复制
$_productCollection = Mage::getResourceModel('reports/product_collection')
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('visibility', $visibility)
    ->addCategoryFilter('15')
    ->addCategoryFilter('36');
    $_productCollection->load(); 

不幸的是,如果不编辑核心文件,您似乎无法执行两个类别筛选器,这是我不想做的。

有什么办法绕过这件事吗?

我想我可以分别抓取两个产品集合,一个按当前类别过滤,一个按特色类别进行过滤,然后使用PHP的stristr查找两者中的产品并使用它们,如下所示

代码语言:javascript
复制
  if (stristr($featProductCollection, $currProductCollection))

有什么想法吗?我想我需要返回的可能只是SKU的产品,也许在一个逗号分开的名单。但我不知道该怎么做才是最好的办法,这看起来确实有点麻烦。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-11-12 22:33:23

好吧,其实我是在其他人的帮助下解决了这个问题的:

代码语言:javascript
复制
    $_productCollection = Mage::getResourceModel('reports/product_collection')
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('visibility', $visibility)
    ->addCategoryFilter($_category)
    ->addAttributeToFilter('category_ids',array('finset'=>'36'))
    $_productCollection->load();

其中$_category是当前类别。

票数 6
EN

Stack Overflow用户

发布于 2010-11-19 12:38:42

不知道为什么,但这在1.4中不起作用,我的解决方案不是很漂亮,但在大型数据库上工作得很好:

代码语言:javascript
复制
$select  = $collection->getSelect();
$select->where('(SELECT COUNT(1) FROM `catalog_category_product_index` AS `cat_index`
WHERE cat_index.product_id=e.entity_id AND cat_index.category_id
IN('.implode(',',$categories).') AND cat_index.store_id='.$collection->getStoreId().') >= '.count($categories));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1725372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档