Search code examples
phpcollectionsmagentoattributes

addAttributeToFilter and OR condition in Magento's Collection


I'd like to select products depending on several criteria from different attribute.

I know how to user $collection->addAttributeToFilter('someattribute', array('like' => '%'));

But I'd like to use several attribute for OR condition.

Like:

$collection->addAttributeToFilter('someattribute', array('like' => 'value'));`

OR

$collection->addAttributeToFilter('otherattribute', array('like' => 'value'));`

To get products which either 'someattribute' OR 'otherattribute' set to 'value'

Is it possible?


Solution

  • yes it is.

    $collection->addAttributeToFilter(
        array(
            array('attribute' => 'someattribute', 'like' => 'value'),
            array('attribute' => 'otherattribute', 'like' => 'value'),
            array('attribute' => 'anotherattribute', 'like' => 'value'),
        )
    );