Magento 后端允许您禁用每个站点的模块输出。我做了一些谷歌搜索,但无法弄清楚如何通过我的代码获取这个值。基本上,当我的模块的输出被禁用时,它工作得很好。但我发现(困难的方法)Magento 不会阻止模块按站点加载。
因为我是在扩展一些核心类,一些构造器还在执行。我的想法是检查模块输出是否被禁用。如果是这样,让我的构造函数调用父的构造函数。如果启用了模块输出,则继续我的自定义代码。
我只是不知道如何获取当前站点的这个值(顺便说一句,我是多站点的)。理想情况下应该是这样的:
$isThisEnabled = Mage::app()->getCurrentStore()->isOutputEnabled('myModule');
基本上只有一行获取当前站点的值(或者默认值,如果没有为当前站点指定的话)。
如有任何帮助,我们将不胜感激!
编辑:我找到了表 core_config_data,它似乎存储了这些信息。如果必须的话,我可以手动查询它,但我觉得 Magento 会有一些内置的东西来返回当前商店的值,回到默认值。
最佳答案
这是一个标准的配置设置,因此访问它应该与访问任何其他配置设置没有什么不同。你只需要知道这个值的路径是什么。分析数据库我相信这应该可以解决问题:
Mage::getStoreConfig('advanced/modules_disable_output/Namespace_Module');
关于php - Magento:获取 "disable module output"的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3718436/