Magento : Fatal error: Class 'Mage_Giftcards_Helper_Data' not found in …/app/Mage.php on line 546
This is common when referencing a missing helper. In many cases the class name itself is malformed or your shortname referencing it is incorrect, which is why Magento is looking for it in the path Mage_Giftcards_Helper_Data
(see example 1 below). For the following examples I have set up a module called MyCompany_MyModule
.
These are just a few of the many ways you can go awry with defining helpers:
Incorrect helper class alias:
I reference my helper as:
$helper = Mage::helper('mycompany');
I get the error:
Fatal error: Class 'Mage_Mycompany_Helper_Data' not found
What went wrong?
My helper class alias is defined as mymodule
:
<helpers>
<mymodule>
<class>MyCompany_MyModule_Helper</class>
</mymodule>
</helpers>
Changing my shortcode to Mage::helper('mymodule')
produced the desired result.
Malformed class name
I reference my helper (correctly this time):
$helper = Mage::helper('mymodule');
I receive:
Fatal error: Class 'MyCompany_MyModule_Helper_Data' not found
What went wrong?
My class definition was missing "_Data":
class MyCompany_MyModule_Helper extends Mage_Core_Helper_Abstract
{
}
Helper/Custom:
This is similar to what happens when you try to refer to a helper class within a file not named "Data.php".
I reference my helper as:
$helper = Mage::helper('custom');
My module helper path was defined as:
<helpers>
<mymodule>
<class>MyCompany_MyModule_Helper</class>
</mymodule>
</helpers>
I have a class file in app/code/local/MyCompany/MyModule/Helper/Custom.php
I get the error:
Fatal error: Class 'Mage_Custom_Helper_Data' not found
What went wrong?
You need to specify other helper classes in a particular module as sub-paths to your module helper's shortname. This is similar to how blocks and models work - but at the topmost level there is no subfolder.
I fix this error by referencing my Custom.php helper class file as such:
$helper = Mage::helper('mymodule/custom');
This only happen when you install extension with enable compiler Here is what you have to do
1 Step app/etc/module/your module which you installed recently disable module
2 Step Login to admin /system/tools compiler disable compiler Upload code again it will work fine then you can compile your code again
good luck