Tuesday, April 19

How to filter all products by attribute value in Magento

Here, I will show how we can filter or fetch products related to any particular attribute and value.

A simple scenario will be filtering products by manufacturer/brand. Suppose, I want to get all products under ‘Samsung’ manufacturer/brand.

For this, you need the attribute code and attribute value ID for which you are fetching products.

To fetch attribute name and value, you can see my previous post here:- How to get attribute name and value in Magento

Now, lets move on to the code. Here is how you can do this:-
/**
 * Get all products related to any particular brand
 * Let us suppose that we are fetching the products related to 'Samsung' brand
 * Let us suppose the Manufacturer ID of Samsung = 3
 */
 
$manufacturerId = 3;
$attributeCode = 'manufacturer';
 
$products = Mage::getModel('catalog/product')
                    ->getCollection()
                    ->addAttributeToFilter($attributeCode, $manufacturerId);
 
// print all products
echo "
"; print_r($products->getItems()); echo "
";

No comments:

Post a Comment