Magento过滤器制造商按类别划分

时间:2011-08-15 18:09:31

标签: php magento attributes filter categories

所以我有一个名为“背包”的类别,我希望得到所有背包制造商。我如何在Magento中完成此任务。这可能吗?以下代码将获得所有制造商,但如何进一步过滤它。我正在使用Magento社区1.3。

$product = Mage::getModel('catalog/product');
$attributes = Mage::getResourceModel('eav/entity_attribute_collection')
              ->setEntityTypeFilter($product->getResource()->getTypeId())
             ->addFieldToFilter('attribute_code', 'manufacturer');

$attribute = $attributes->getFirstItem()->setEntity($product->getResource());
$manufacturers = $attribute->getSource()->getAllOptions(false);               

print_r($manufacturers);

任何建议都会有很大帮助。我在Google上搜索和搜索。但我似乎找不到按类别过滤属性的方法。因为我相信这就是我想要做的事情。

1 个答案:

答案 0 :(得分:0)

首先,您需要将所有产品都附加到制造商属性

的类别中
Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('manufacturer')->addAttributeToFilter('category_id', '3')

,第二步是将数字制造商属性id-s改为他们的名字。在这里,您可以使用两种方法,将标签加入到集合中,或者从所有制造商名称的另一个集合中映射它们。