2011-02-25 8 views
0

나는 기본적으로 판매중인 제품을 보여주는 맞춤형 페이지가 있습니다. 컬렉션에서 나오는 제품을 가장 높은 할인율로 정렬 할 수 있는지 묻는 질문을 받았습니다.Magento 할인 비율로 할인

따라서 두 개의 다른 특성을 함께 다이빙 한 수학적 결과를 기반으로 제품의 순서를 설정할 수 있는지 궁금합니다.

답변

2

내가 알아 냈다고 생각합니다. Alan Storm은 이전에 임의의 방식으로 제품을 분류하는 것과 비슷한 문제로 나를 도왔습니다. > 순서 ('(e .special_price/e -

$products = Mage::getModel('catalog/category')->load($category_id) 
->getProductCollection() 
->addAttributeToSelect('name') 
->addAttributeToSelect('price') 
->addAttributeToSelect('small_image') 
->addAttributeToFilter('status', 1) 
->addAttributeToFilter('visibility', 4) 
->addAttributeToFilter('special_price', array('neq' => "")) 
->addAttributeToFilter('discontinued', array('neq' => 1)) 
->setPageSize($results_per_page) 
->setCurPage($current_page) 
; 

$ 제품 -> getSelect() :이 작품을 만들기 위해 나는 다음과 같은 코드를 내놓았다 같은 생각을 사용하여

Magento get a product collection in an arbitrary order

.price) ','DESC ');

신용은 Alan Storm에게 맡겨야합니다.

+0

무엇을 의미합니까 e.special_price 또는 e.price –

+0

echo "$ products-> getSelect()"를 실행하면 실행중인 쿼리가 표시됩니다. 당신이 선택하는 프라이 머리 테이블은 SQL에서 e라고 부릅니다. –

0

사용 : $ 제품 -> getSelect() -> 질서 ('1 - (price_index.final_price/e.price)', 'DESC');

그래서 일부 규칙 판촉 행사가있는 경우에도 고려됩니다.

2

Smart Sorting Extension for Magento을보세요.

그것은 9 개 새로운 방식으로 상점의 카탈로그에서 고객 sort products을 할 수 있습니다 : 위시리스트 (실시간)에서 이제

, 카트 (실시간)에서 이제

가장 큰 $ 절약,

Bigg 동부 표준시 % 절약, 대부분의 감사

대부분의을 논의

고객의 선택,,,

가장 최근,

모스 t 검토 됨.

0

D. Militos의 대답은 약간의 수정과 함께, 나를 위해 정확했다 :

$ 제품 -> getSelect() -> 순서 ('1 - (price_index.final_price/price_index.가격) ','DESC ');

관련 문제