gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-03 04:59:36 24 4
gpt4 key购买 nike

有谁知道是否有办法通过类别过滤器运行产品集合两次?我有一个隐藏的“特色”类别,我将产品添加到其中,以便可以将它们作为特色产品获取。目前我正在收集这样的产品:

$_productCollection = Mage::getResourceModel('reports/product_collection')
->addAttributeToSelect('*')
->addAttributeToFilter('visibility', $visibility)
->addCategoryFilter('36');
$_productCollection->load();

这在主页上效果很好,但在类别页面上,我需要首先按当前类别过滤结果,然后按特色类别过滤结果:

$_productCollection = Mage::getResourceModel('reports/product_collection')
->addAttributeToSelect('*')
->addAttributeToFilter('visibility', $visibility)
->addCategoryFilter('15')
->addCategoryFilter('36');
$_productCollection->load();

不幸的是,如果不编辑核心文件,您似乎无法执行 2 个类别过滤器,而我不想这样做。

有什么办法可以解决这个问题吗?

我想我可以分别获取 2 个产品集合,一个按当前类别过滤,一个按特色类别过滤,然后使用 PHP 的 stristr 查找位于这两个产品集合中的产品并使用它们,例如

  if (stristr($featProductCollection, $currProductCollection))

有人有什么想法吗?我想我可能需要返回产品的 SKU,也许是用逗号分隔的列表。但我不确定解决这个问题的最佳方法,而且它看起来确实有点老套。

最佳答案

好吧,实际上我自己在其他人的帮助下整理了它:

    $_productCollection = Mage::getResourceModel('reports/product_collection')
->addAttributeToSelect('*')
->addAttributeToFilter('visibility', $visibility)
->addCategoryFilter($_category)
->addAttributeToFilter('category_ids',array('finset'=>'36'))
$_productCollection->load();

其中 $_category 是当前类别。

关于Magento - 如何使用 2 个类别过滤器过滤产品集合?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1725372/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com