This tutorial will show you how to display new product, featured product, bestseller product or by attribute of product… on homepage.

Attachment 805

First, explain how Magento filter a collection. Use this to explain how Magento filter a collection by attribute, field in a model, so that people can learn to write their own collections.
addAttributeToFilter() is a function that can be called on a collection in Magento.
In short, it adds a condition to the WHERE part of the MySQL query used to extract a collection from the database.

For example:

    $_products = Mage::getModel('catalog/product')->getCollection()
     ->addAttributeToSelect(array('name', 'product_url',
     ->addAttributeToFilter('sku', array('like' => 'UX%'))

The above code would get a product collection, with each product having it’s name, url,
price and small image loaded in it’s data array. The product collection would be filtered and contain only products that have an SKU starting with UX.


We can filter our collections with the addFieldToFilter() function. In SQL you can think of these as your WHERE clauses.
Lets say we want to get a product by the sku PRODUCT001

$products = Mage::getModel('catalog/product')->getCollection();
$product = $products->getFirstItem();

Lets try the Greater Than conditional. Simply supply an array with the conditional type and value.
Products greater than $100:

$products = Mage::getModel('catalog/product')->getCollection();
$products->addAttributeToFilter('price', array('gt' => '100'));

Magento gives us lots of filter conditionals to choose from see: addAttributeToFilter Conditionals

Read full lesson at :

View more threads in the same category: