I have changed the active
parameter from true
to false
in a module's app/etc/modules/Namespace_Module.xml file, and flushed the cache. I've also logged out and then in again.
However, the module is still showing under "Disable Modules Output in System / Configuration / Advanced / Advanced. I don't understand why.
I thought changing the file in app/etc/modules would 'hard disable' the module – so why is it still showing in that section of the admin panel?
Even if I rename the file to app/etc/modules/disabled_Namespace_Module.xml, the module is still listed. Where does the Disable Modules Output section get its list from?!
My aim is to completely disable this module's functionality, and the listing of it there is making me doubt it is fully disabled.
NB. In all other areas of the site (frontend and backend), the module doesn't appear any more.
Best Answer
The config section "disable modules output" shows all modules, that Magento found in
app/etc/modules
, and does not check theiractive
state.It will only disappear if you delete the XML file. But besides this configuration section there is no core functionality that uses disabled modules, so you don't need to worry that it's still active somehow.
Why does renaming the file not work?
Because the file name does not matter at all. Magento initially reads all XML files in
app/etc/modules
, combines them, builds a dependency tree and then loads the active modules.Your disabled module is not loaded (its
config.xml
is not merged into the configuration), but the information fromapp/etc/modules/disabled_Namespace_Module.xml
is.