0

I have been asked to migrate magento from another host, been pulling my hair out on one module that will not load, which gives the following PHP error.

PHP Fatal error: Class 'Mage_Megamenupro_Helper_Data' not found in

The module xml file looks like so:

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

The module files are found here:

app/code/local/EM/Megamenupro/

├── Block
│   ├── Adminhtml
│   │   ├── Megamenupro
│   │   │   ├── Edit
│   │   │   │   ├── Form.php
│   │   │   │   ├── Tab
│   │   │   │   │   └── Form.php
│   │   │   │   └── Tabs.php
│   │   │   ├── Edit.php
│   │   │   └── Grid.php
│   │   ├── Megamenupro.php
│   │   ├── Menueditor
│   │   │   ├── Edit.php
│   │   │   └── Sample.php
│   │   ├── Menueditor.php
│   │   ├── Renderer
│   │   │   └── Description.php
│   │   └── Variable.php
│   ├── Catalognavigation.php
│   └── Megamenupro.php
├── controllers
│   ├── Adminhtml
│   │   ├── MegamenuproController.php
│   │   └── MenueditorController.php
│   └── IndexController.php
├── etc
│   ├── config.xml
│   └── widget.xml
├── Helper
│   ├── Cache.php
│   ├── Data.php
│   └── Multicache.php
├── Model
│   ├── Megamenupro.php
│   ├── Mysql4
│   │   ├── Megamenupro
│   │   │   └── Collection.php
│   │   └── Megamenupro.php
│   ├── Resource
│   │   └── Category
│   │       └── Flat.php
│   ├── Status.php
│   └── Update.php
└── sql
    └── megamenupro_setup
        ├── mysql4-install-0.1.1.php
        ├── mysql4-install-1.0.0.php
        ├── mysql4-upgrade-0.1.0-0.1.1.php
        └── mysql4-upgrade-0.1.1-1.0.0.php

for the life of me I cant figure where its calling the wrong module.

  • 1
    Have you tried to disable compilation and then enable it again, something this can happen when magento gets abit mixed up – Barry Connolly Apr 2 '17 at 21:41
  • Is there a file in app/etc/modules for the extension? Should be something like EM_Megamenupro.xml. – Danny Nimmo Apr 2 '17 at 23:07
1

That helper class is called auto-magically in magento, there doesn't have to be an explicit call to it in any other php class or xml. But there could be a phtml or local.xml that is using it, and that is why it's kicking the error. I think you should just create that file in the offending module, leave the class's content blank and call it a day.

0

Most of the time when I had this issue, it was because a module="..." node in a XML file hat the wrong value. I would double-check the widget.xml file. Maybe it helps if you remove the occurrences of module="..." there as a test.

0

No one can tell you why this error is there but you can check this check list to make sure those are things were there

1) login admin panel goto system->configuration->Advanced->Advanced and make sure EM_Megamenupro should be enable

2) goto app/etc/modules/MEM_Megamenupro.xml and make sure

 <EM_Megamenupro>
     <active>true</active>
     <codePool>core</codePool>
 </EM_Megamenupro>

this node should be true.

3) check for compilation, if compilation is enable then disable compile and check. and it works then do recompile. for compilation go to system->tool->compilation

4) also check app/code/community OR local /EM/Megamenupro/Helper/Data.php exist or not.

  • Thank for the input, those things I have already tried. I dug into the templates and found that $helper = Mage::helper("megamenupro"), is what causing magento to error out. The modules XML file for helpers are correct to the reference of the class. – Bob Apr 3 '17 at 7:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.