2011-02-15 33 views
0

我有誰擁有三家船區客戶端: - 英國 - 歐洲 - 世界如何在Magento創建統一費率發貨區?

運輸的每個產品的成本會自動計算出一個統一費率的基礎上,客戶落入三選一區域。這在Magento中可能嗎?

Rich

+0

是的。你有編程問題嗎? – 2011-02-15 16:05:28

回答

0

您可以嘗試Webshopapps Matrixrate擴展。它有很多方法可以自定義工作臺運輸。

0

創建一個新模塊。從Mage_Shipping_Model_Carrier_Abstract創建一個新的模型類繼承,FX

class MyCompany_MyModule_Model_Flatrate extends Mage_Shipping_Model_Carrier_Abstract 
{ 
    protected $_code = 'mycompany_flatrate'; // some unique shipping code 

    public function collectRates(Mage_Shipping_Model_Rate_Request $data) 
    { 
     if(!$this->isActive()) 
     return false; 


     /* @var $method Mage_Shipping_Model_Rate_Result_Method */ 
     /* @var $result Mage_Shipping_Model_Rate_Result */ 
     $method = Mage::getModel('shipping/rate_result_method'); 
     $result = Mage::getModel('shipping/rate_result'); 

     $method->setCarrier($this->_code); 
     $method->setCarrierTitle($this->getConfigData('name')); 
     $method->setMethod($this->_code); 
     $method->setMethodTitle($this->getConfigData('name')); 

     if($data->getDestCountryId() == '...') 
      $method->setPrice(...); 
     else if (...) 
      ... 

     $result->append($method); 
     return $result; 
    } 
} 

,並添加以下到您的config.xml

<default> 
    <carriers> 
     <mycompany_flatrate> 
      <active>1</active> 
      <model>mycompany_mymodule/flatrate</model> 
      <name>Flatrate</name> 
      <title>Flatrate</title> 
      <sallowspecific>0</sallowspecific> 
     </mycompany_flatrate> 
    </carriers> 
    </default> 

<config>標籤下。