0
아래와 같이 diy_kit_price 특성 (새 특성이 이미 추가됨)을 포함한 일부 특성으로 제품 컬렉션을 필터링하려고합니다.필터 여러 가격 범위로 제품 컬렉션
가격 범위는 :
- 0 - 5000
- 10000-15000
나는 여러 가지 방법하지만 행운을 시도했다. 내가 한 가격 범위에 의해 필터링하고 때 :
작업 코드
는$products = Mage::getModel('catalog/product')->getCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('type_id', 'configurable')
->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
->addAttributeToFilter('category_id', array(
array('finset' => '37')
))
->addAttributeToSort('name', 'asc')
->addAttributeToFilter('diy_kit_price', array('gt' => 0))
->addAttributeToFilter('diy_kit_price', array('lt' => 5000));
작동하지 않는 코드 : 내가 한 가격 범위에 의해 필터링하고 때
$products = Mage::getModel('catalog/product')->getCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('type_id', 'configurable')
->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
->addAttributeToFilter('category_id', array(
array('finset' => '37')
))
->addAttributeToSort('name', 'asc')
->addAttributeToFilter('diy_kit_price', array('gt' => 0))
->addAttributeToFilter('diy_kit_price', array('lt' => 5000))
->addAttributeToFilter('diy_kit_price', array('gt' => 10000))
->addAttributeToFilter('diy_kit_price', array('lt' => 15000));
거기에 다른 방법은 필터링하기 . 여러 가격대로 일반 SQL을 사용하여 필터링 할 수 있습니까?
미리 감사드립니다.
실제로 필터는 0 내지 15000 5000 10000이고 소용되고있다. '(> 0 AND < 5k) OR (> 10k AND <15k)'를 사용해야합니다. 그것이 젠드 쿼리로 변환하지 않고도 할 수 있는지 확실하지 않습니다. – enenen
언급 한 코드를 어떻게 사용할 수 있습니까? 당신은 저에게 모범을 보여 주시겠습니까? – Sivakumar