2011-12-28 3 views
1

Я пытаюсь прочитать данные конфигурации для настраиваемого модуля, чтобы включить или отключить его на основе настройки конфигурации. Я пытаюсь прочитать данные конфигурации в Observer следующим образом: $module_state = Mage::helper('stopcheckout')->moduleActive(); и вот мой helper. Мой наблюдатель получает вызов, когда товар добавляется в корзину. Но я получаю пустую страницу, когда пытаюсь прочитать данные конфигурации с приведенным выше кодом. Вот файлы config.xml и system.xml. Где я иду не так? Благодарю.Данные настройки конфигурации Magento

ответ

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() метод всегда возвращает логическое значение. Он оценивает строки «false» и «0» как false, поэтому это необходимо, потому что исходная модель adminhtml/system_config_source_yesno использует 1 и 0 в качестве сохраненных значений.

Параметр, который передается для значений, заданных с помощью System.Xml полей всегда будет иметь три части: одна для <sections> узла, один для <groups> узла, и один для <fields> узла.

+0

Спасибо за это, работал как шарм, и я не думаю об этом. – Nithin

Смежные вопросы