Я бы хотел выбрать продукты в зависимости от нескольких критериев от разных атрибутов.
Я знаю, как пользователю $collection->addAttributeToFilter('someattribute', array('like' => '%'));
Но я бы хотел использовать несколько атрибутов для условия ИЛИ .
Подобно:
$collection->addAttributeToFilter('someattribute', array('like' => 'value'));`
ИЛИ
$collection->addAttributeToFilter('otherattribute', array('like' => 'value'));`
Чтобы получить продукты, которые либо «someattribute», либо «otherattribute» установлены на «value»,
Является ли это возможным?
да.
$collection->addAttributeToFilter( array( array('attribute' => 'someattribute', 'like' => 'value'), array('attribute' => 'otherattribute', 'like' => 'value'), array('attribute' => 'anotherattribute', 'like' => 'value'), ) );
Если вы хотите использовать то же самое для функции addFieldToFilter для коллекций, которые не используют EAV, вы можете использовать следующий формат:
$collection->addFieldToFilter( array( 'someattribute', 'otherattribute', 'anotherattribute', ), array( array('like' => 'value'), array('like' => 'value'), array('like' => 'value'), ));
Еще одна вещь, на которую нужно обратить внимание: «ИЛИ»:
->addFieldToFilter( 'type_id', ['in' => ['simple', 'configurable']] )
Для addAttributeToFilter:
$collections = Mage::getModel('sales/order')->getCollection() ->addAttributeToFilter('increment_id', array('in' => $sellerIncrementIds)) ->addAttributeToFilter('status', ['in' => ['pending','pending_seller_confirmation']]);