【问题标题】:Paypal Helper not Loading after upgrade, blank pagePaypal Helper 升级后未加载,空白页面
【发布时间】:2015-10-05 04:55:33
【问题描述】:

我将 Magento 从 v 1.4.x 升级到 1.9.2.0。除了 Paypal 模块外,一切似乎都可以正常工作。

如果我转到管理中的系统 -> 配置,或前端的结帐页面,我会看到一个空白屏幕。

当我进入系统 -> 配置时,error_log 显示此错误:

PHP Fatal error:  Call to undefined method Mage_Paypal_Helper_Data::getConfigurationCountryCode() in /home/mysite/public_html/includes/src/Mage_Paypal_Model_Observer.php on line 130, referer: http://www.mysite.co.uk/index.php/site_admin/dashboard/index/key/7ec25272dd6e12345667015d73b305/

当我在前端结帐时,error_log 显示了这一点:

PHP Fatal error:  Undefined class constant 'MERCHANT_COUNTRY_CONFIG_PATH' in /home/mysite/public_html/includes/src/Mage_Paypal_Model_Config.php on line 769, referer: http://www.mysite.co.uk/checkout/onepage/

所有文件看起来都存在...特别是带有 Mage_Paypal_Helper_Data 类和 getConfigurationCountryCode() 方法的 Helper/Data.php 文件。所以它似乎只是没有加载这个帮助类。

有人知道为什么它不会加载吗?

谢谢

【问题讨论】:

    标签: magento paypal helper


    【解决方案1】:

    我已经解决了这个问题。 local/Mage 文件夹中有一个具有相同 Mage_Paypal_Helper_Data 类的 Paypal 文件夹,但没有必要的方法。因此正在加载此类。该类一定是在它以某种方式起作用的 1.4.x 中遗留下来的。删除此文件夹会导致 core/Mage/Paypal 类正常工作。

    【讨论】:

      【解决方案2】:

      这也解决了我的问题,虽然我在升级到 1.9.2.2 后遇到了不同的错误。

      当我点击使用paypal express结账时,会弹出一个错误页面:

      致命错误:在第 98 行的 public_html/app/code/core/Mage/Paypal/Controller/Express/Abstract.php 中调用未定义的方法 Mage_Paypal_Model_Express_Checkout::setIsBml()。

      在我的头撞到墙上一段时间后,我终于检查了local/mage 文件夹,并发现了 18 个月前由以前的开发人员完成的 paypal 结帐覆盖。升级后出现错误是有道理的,因为覆盖是针对旧版本的 magento 贝宝设置。

      删除覆盖,修复完成并排序!

      干杯

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-08-11
        • 2013-03-22
        • 2013-07-03
        • 2014-11-15
        • 2019-02-25
        相关资源
        最近更新 更多