我正在尝试读取自定义模块的配置数据,以根据配置设置启用或禁用它。我试图在Observer中读取配置数据,如下所示:$module_state = Mage::helper('stopcheckout')->moduleActive();
这里是我的helper。当产品被添加到购物车时,我的观察者会被呼叫。但是当我尝试使用上面的剪切代码读取配置数据时,我得到一个空白页面。以下是config.xml和system.xml个文件。我哪里错了?感谢。
答案 0 :(得分:10)
你的助手方法不正确,因为我确定你已经猜到了: - )
试试这个:
<?php
class Foostor_Stopcheckout_Helper_Data extends Mage_Core_Helper_Abstract
{
/**
* Check if the extension has been disabled in the system configuration
*/
public function moduleActive()
{
return ! (bool) Mage::getStoreConfigFlag('catalog/stopcheckout/disable_ext');
}
}
getStoreConfigFlag()
方法总是返回一个布尔值。它评估字符串&#34; false&#34;和&#34; 0&#34;作为false
,所以这是合适的,因为adminhtml/system_config_source_yesno
源模型使用1和0作为存储值。
通过system.xml字段设置的值传递的参数将始终包含三个部分:一个用于<sections>
节点,一个用于<groups>
节点,一个用于<fields>
} node。