2013-05-30 1 views
0

, 나는 몇 가지 값을 설정 한 :젠토는 배송 collectRates을 (GET)는 관찰자에 속성 collectRates 방법에 shippingModule에서

$method->setCarrier('test_customrate'); 
$method->setCarrierTitle($this->getConfigData('title')); 
$method->setMethod('test_customrate'); 
$method->setMethodTitle($this->getConfigData('name')); 
$method->setPrice($this->getConfigData('price')); 
$method->setCost(2); 
$method->setUsername($this->getConfigData('username')); 
$method->setPassword($this->getConfigData('password')); 
$result->append($method); 

이 값은 체크 아웃 세션에 저장됩니다? 어디에서나 찾을 수 없습니다.

이제 관찰자의 아래 언급 된 코드를 통해 위에서 언급 한 것처럼 몇 가지 값을 얻을 수 있다는 것을 알았습니다. 그러나 비용, 사용자 이름 및 비밀번호와 같은 일부 값은 여기에 없습니다.

2013-06-01T15:36:10+00:00 DEBUG (7): Array 
(
[rate_id] => 852 
[address_id] => 93 
[created_at] => 2013-06-01 15:36:06 
[updated_at] => 2013-06-01 15:36:09 
[carrier] => test_customrate 
[carrier_title] => test_customrate 
[code] => test_customrate_test_customrate 
[method] => test_customrate 
[method_description] => 
[price] => 0.0000 
[method_title] => test123 
[error_message] => 
) 

답변

0

가 단순히 운송 모듈 설정에서 직접 값을 얻어서이 문제를 해결했다 :

$rates = Mage::getSingleton('checkout/session')->getQuote()->getShippingAddress() 
->getShippingRatesCollection(); 


foreach ($rates as $rate) { 

Mage::log($rate->getData()); 

} 

이 다음과 같은 구조의 무언가를 검색합니다. 이처럼

:

마법사 :: getStoreConfig ('섹션/그룹/필드');

그래서 저는 collectRates()에서했던 것처럼 system.xml에서 데이터를 가져옵니다.
그러나 이것은 매우 정적이며 나는 여전히 순서에서 바로 이것을 얻는 방법을 선호합니다.

당분간 이것은 내 문제를 해결합니다. 무엇이든지 다른 방법으로 자유롭게 대답 할 수 있다면