私はMagentoの高度な検索に取り組んでいます。
4つの属性で検索します。ここで、属性の 1 つを選択すると、他の属性をリロードして、選択した属性に適合しない属性を無効にする必要があります。簡単な方法で可能ですか?
私はMagentoの高度な検索に取り組んでいます。
4つの属性で検索します。ここで、属性の 1 つを選択すると、他の属性をリロードして、選択した属性に適合しない属性を無効にする必要があります。簡単な方法で可能ですか?
次の方法でフィルタリングできます。
$collection = Mage::getModel('catalog/product')->getCollection();
$collection->addAttributeToSelect('name');
$collection->addAttributeToSelect('orig_price');
//filter for products whose orig_price is greater than (gt) 100
$collection->addFieldToFilter(array(
array('attribute'=>'orig_price','gt'=>'100'),
));
//AND filter for products whose orig_price is less than (lt) 130
$collection->addFieldToFilter(array(
array('attribute'=>'orig_price','lt'=>'130'),
));
While this will filter by a name that equals one thing OR another.
$collection = Mage::getModel('catalog/product')->getCollection();
$collection->addAttributeToSelect('name');
$collection->addAttributeToSelect('orig_price');
//filter for products who name is equal (eq) to Widget A, or equal (eq) to Widget B
$collection->addFieldToFilter(array(
array('attribute'=>'name','eq'=>'Widget A'),
array('attribute'=>'name','eq'=>'Widget B'),
));