2013-08-14 15 views
1

나는 magento로 웹 사이트를 개발 중입니다.Magento 제품 속성을 사용하여 상품 정렬 순서

이제 제품을 특정 순서로 주문하려고합니다.

'display_order'라는 속성을 추가하고 속성 집합 (일반)에 연결했습니다. 그런 다음 각 제품에 수동으로 주문을 추가했습니다.

이들은 내가 사용하는 코드입니다. 내 제품에 다른 속성 세트가 있습니다.

먼저 하나

$_productCollection = Mage::getModel('catalog/product')->getCollection(); 
$_productCollection->addAttributeToSelect('*'); 
$_productCollection->addAttributeToFilter('display_order', array('gt' => 0)); 
$_helper = $this->helper('catalog/output'); 

두 번째

$_productCollection = Mage::getModel('catalog/product')->getCollection(); 
$_productCollection->addAttributeToSelect('*'); 
$_productCollection->addAttributeToSort('display_order', 'ASC'); 
$_helper = $this->helper('catalog/output'); 

내가 정렬 된 순서로 제품을 받고 있어요하지만, 그것은 단지 설정 유사한 특성을 기반으로 정렬이있어 사소한 문제가있다.

즉; 일종의 설정 속성의 같은 종류의 제품을 먼저 한 후이

그래서 나는 'display_order'

의 순서로 올바른 순서를받지 못했습니다 .. 등등 동일하게 설정 속성과 함께 다른 제품을 정렬합니다

제품이있는 특성 세트를 고려하지 않고 주어진 순서대로 정확하게 가져올 수있는 방법이 있습니까?

도와주세요.

미리 감사드립니다.

- Tibin 매튜

제품의 표시 순서를 변경하는 Mangeto의 기본 방법은 것입니다

답변

4

에 :

  1. 카탈로그> 카테고리> 관리 카테고리

  2. 범주를 클릭 왼쪽 열에서 편집하고 싶습니다.

  3. 오른쪽 열에서 제품 범주 탭을 클릭하십시오.

  4. 여기에서 정렬 순서를 변경하십시오.

    프런트 엔드 사용이 코드에 대한

Reference

+0

올바른 내용입니다. 그러나 이것은 단일 카테고리에서만 작동합니다. 내 제품이 다른 카테고리에 있으면 작동하지 않습니다. –

+0

@tibinmathew는 당신의 질문이 그것을 진술하지 않았기 때문에 그것을 깨닫지 못했습니다. 'addAttributeToSort()'가 속성 세트별로 제품을 그룹화하지 않도록 핵심 Magento 기능을 오버라이드해야 할 것처럼 보입니다. 내 생각에 이것은 다른 영역에서 버그를 일으킬 수 있습니다. –

+0

Tibin이 frontend가 아니라 backend가 아니라고 생각했습니다. 왜냐하면 frontend sorting option을 추가하기를 원하기 때문입니다 :) –

0

은, 여기에 내가 "product_sort_order"사용자 정의 속성을 만들었습니다.

$website_id = Mage::app()->getWebsite()->getId(); 
$storeId = Mage::app()->getStore()->getId();    
$collection = Mage::getModel('catalog/product') 
    ->setStoreId($storeId) 
    ->getCollection() 
    ->addAttributeToSelect('*') 
    ->addWebsiteFilter($website_id) 
    ->addAttributeToFilter('type_id', array('eq' => 'simple')); 
$collection->getSelect()->limit(6); 
$collection->addAttributeToSort('product_sort_order', Varien_Data_Collection::SORT_ORDER_DESC); 
관련 문제