0

Ok So I've had some issues with removing modules from Magento recently, so I decided to scrap what i had before and start again with a slight name change to the module.

So i created the module, set it into my site and it didn't work, Once I reloaded up the admin pages I only saw the logo, the global search, logged in, date, the logout options and the next grey bar, which usually contains the main navigation for the admin section, however it was devoid of any links... the content section was empty.

So I stuck it on my local test server and i got the same, however the empty nav bar now contained the following error:

Fatal error: Class 'Chris_Homebanner_Helper_Data' not found in C:\xampp\htdocs\magento\app\Mage.php on line 547

I finally installed a fresh copy of Magento on my local server, and it worked fine, all installed correctly.

So somehow along the road of building this site something has been done to break this. I've not changed or extended any of the Magento core however. The only thing I've really done recently is remove an entry from the core_resouce table and delete local module files for another module. So no idea how I could have caused an error like this by doing that.

1 Answer 1

2

It sounds to me like you may have added the module attribute inside your system.xml:

<?xml version="1.0"?>
<config>
    <sections>
        <homebanner translate="label" module="homebanner">
            ...
        </homebanner>
    </sections>
</config>

In the above, module="homebanner" causes Magento to require a default helper class (Chris_Homebanner_Helper_Data) in your module when accessing admin, but you haven't defined helpers in your config.xml. You can either remove module="homebanner" from your system.xml, or add helpers to your config.xml and create a helper class. To create a helper, in config.xml:

<?xml version="1.0"?>
<config>
    ...
    <global>
        ...
        <helpers>
            <homebanner>
                <class>Chris_Homebanner_Helper</class>
            </homebanner>
        </helpers>
        ...
    </global>
    ...
</config>

And then create the actual helper class, Chris/Homebanner/Helper/Data.php (it doesn't need any methods for this application):

<?php
class Chris_Homebanner_Helper_Data extends Mage_Core_Helper_Abstract
{

}
5
  • Thing is I haven't made a system.xml file due to this module not needing a helper class, the confusing part is that this works fine in a fresh install but not in my live development site. Commented Mar 28, 2013 at 14:53
  • Ok, so you have no settings at all for the module under system -> configuration? Commented Mar 28, 2013 at 15:10
  • Nope this module was just to add a database row and add/edit it. It was created with the silk soft modlue creator. Like the rest of mine to save time, So it works fine (as i said works fine ion a fresh install). It seems to be something I've done to my magento install while trying to fully remove my last module that just went tits up. But I don't know anything i did when trying to remove that last module that would have effected the core like this, after all the broken module is currently still running (i say broken, it wouldn't take any update applied to it) Commented Mar 28, 2013 at 15:14
  • Ask a stupid question, but you have cleared the cache since then? Commented Mar 28, 2013 at 15:35
  • Well I deleted the var folder, and cleared my local cache but because the admin menu is not available I have no way of doing it the correct way. Commented Mar 28, 2013 at 17:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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