2013-05-08 2 views
-1

운송 방법에 대한 매트릭스 속도 모듈이 통합되어 있습니다. 그러나 추가 요구 사항이 있습니다. 창고 옵션을 변경하여 동적 운송 가격 표시의 경우Magento에서 동적 배송비를 표시하는 방법은 무엇입니까?

예를 들어, I 2 개 창고 있고 B. 사용자는

배송 가격은 따라서 업데이트되어야이어서, 창고 A를 선택했을 때. 창고 보관소와 동일한 케이스 B.

혼란 스럽습니다. 어떻게해야합니까?

도와주세요.

답변

0

비슷한 요구 사항으로 인해 어려움을 겪고 있습니다. 나는 우편 요금 방식의 사용자 선택에 따라 운송료를 설정해야합니다. 여기

는 당신을 도움이된다면 내가 진행하고 방법입니다

  1. 사용자가/어떤 창고/우편 요금을 선택할 수있는 사용자 지정 배송 방법을 만듭니다. OnePageCheckout 운송 방법 단계에 표시됩니다. 당신은 쉽게 새로운 배송 방법을 만들 수 있습니다, 그냥 구글.

  2. 템플릿에 if($_rate->getCode()=='yourmodule_code') 조건을 넣어/체크 아웃/SHIPPING_METHOD/available.phtml 다음 사용자가 볼 수있는 라디오 버튼에 대한 코드를 작성합니다. 예. Warehouse1 및 Warehouse2 용. 사용자의 선택 사항에 따라

  3. 는 모듈의 [당신이 오버라이드 (override) 한() 메소드이

    public function collectRates(Mage_Shipping_Model_Rate_Request $request) { 
         $result = Mage::getModel('shipping/rate_result'); 
         if($show){ 
    
         $method = Mage::getModel('shipping/rate_result_method'); 
         $method->setCarrier($this->_code); 
         $method->setMethod($this->_code); 
         $method->setCarrierTitle($this->getConfigData('title')); 
         $method->setMethodTitle($this->getConfigData('name')); 
         $method->setPrice($price); //this price you can get from available.phtml using AJAX 
         $method->setCost($price); 
         $result->append($method); 
    
        }else{ 
         $error = Mage::getModel('shipping/rate_result_error'); 
         $error->setCarrier($this->_code); 
         $error->setCarrierTitle($this->getConfigData('name')); 
         $error->setErrorMessage($this->getConfigData('specificerrmsg')); 
         $result->append($error); 
        } 
        return $result; 
    } 
    

처럼 도움이 희망 collectRates를 사용하여 운송 속도를 설정합니다.

관련 문제