2017-10-26 8 views
0

Magento Paypal Express Checkout 기능을 맞춤 설정하여 현재 상점의 통화를 사용하고 Paypal에 기본 통화가 아닌 주문 총액을 전달하려고합니다. 그러나 내 사용자 정의가 사이트에 나타나지 않습니다. 여기 Magento 1.9 - Paypal Express Checkout에 대한 사용자 정의가 작동하지 않습니다.

내가 만든 것입니다 :

app/code/local/My/Paypal/Model/Express/Checkout.php

<?php 

class My_Paypal_Model_Express_Checkout extends Mage_Paypal_Model_Express_Checkout { 

    public function getCheckoutShortcutImageUrl() { 
     //Copy pasted the original code with some modifications to use 
     // _quote->getGrandTotal() 
    } 

    public function start($returnUrl, $cancelUrl, $button = null) { 
     //Copy pasted original code with modifications to use 
     //_quote->getGrandTotal() and _quote->getStoreCurrencyCode() 
    } 

} 

?> 

app/code/local/My/Paypal/etc/config.xml

<?xml version="1.0"?> 
<config> 
    <modules> 
    <My_Paypal> 
     <version>0.1.0</version> 
    </My_Paypal> 
    </modules> 
    <global> 
    <models> 
     <paypal> 
     <rewrite> 
      <express_checkout>My_Paypal_Model_Express_Checkout</express_checkout> 
     </rewrite> 
     </paypal> 
    </models> 
    <global> 
</config> 

app/etc/modules/My_Paypal.xml

<?xml version="1.0"?> 
<config> 
    <modules> 
    <My_Paypal> 
     <active>true</active> 
     <codePool>local</codePool> 
     <version>0.1.0</version> 
    </My_Paypal> 
    </modules> 
</config> 

System -> Configuration -> Advanced -> Advanced -> Disable Modules Output 아래 모듈이 올바르게 표시되고 Mage_PollMage_TagDisable으로 표시됩니다.

Mage_Paypal_Model_Express_Checkout이 직접 변경되므로 코드 변경 작업이 제대로 수행되지만 모델을 올바르게 사용자 정의하는 방법이 제대로 작동하지 않는 것 같습니다.

매번 변경 될 때마다 Magento 캐시를 새로 고치고 플러시하므로 캐싱 문제 만이 아닙니다.

내 생각에 내 config.xml에 문제가있는 것 같습니다. 그러나이 시점에서 나는 무엇을 알아낼 수없는 것 같습니다.

아이디어가 있으십니까? 또는, 내가하고 싶은 것을 성취하는 더 좋은 방법은 또한 효과가있을 것이다.

Magento를 디버깅하여 사용자 정의에서 오류가 발생했을 수있는 것을 어떻게 이해합니까? 켜거나 볼 수있는 로그가 있습니까?

답변

0

구현 방법은 충분합니다. 유일한 좋은 방법은 이벤트를 사용하는 것이지만, 항상 가능한 것은 아닙니다.

paypal 모듈에 dependency를 추가하고이 모델이 이미 다른 곳에 다시 작성되었는지 확인하십시오.

<config> 
    <modules> 
    <My_Paypal> 
     <active>true</active> 
     <codePool>local</codePool> 
     <depends> 
      <Mage_Paypal /> 
     </depends> 
    </My_Paypal> 
    </modules> 
</config> 
+0

감사합니다. 나는이 일을 시도했지만 차이를 만드는 것 같지 않습니다. 무슨 일이 일어나고 있는지 디버깅하려면 어떻게해야합니까? –