2010-08-23 19 views
28

Was ist der beste Weg festzustellen, ob ein bestimmtes Modul in Magento aktiviert/aktiviert ist? Ich habe versucht, mit class_exists zu überprüfen, ob mein Code von PHP geladen und geparst wurde, aber in letzter Zeit habe ich festgestellt, seine ziemlich unzuverlässig (gibt true, selbst wenn ich die .xml-Konfiguration des Moduls löschen).Ermitteln, ob das Magento-Modul aktiviert ist

Gibt es eine Kernfunktion, die ich anrufen kann?

Antwort

54

Wenn Sie nur

ist
Mage::helper('core')->isModuleEnabled(<module name>); 

Es in

implementiert verwenden einen eingebauten Funktion nutzen möchten
Mage_Core_Helper_Abstract 
+4

eigentlich sollte man erwähnen, dass Modulname gleich sein sollte: ** MyCompany_MyModule ** – Mohamed23gharbi

+0

Nur fyi, diese Methode wurde in Magento in CE 1.4.1.0 eingeführt, für niedrigere Versionskompatibilität verwenden Sie die '' 'getModuleConifg'' Lösung – augsteyer

36

Hier ist eine weitere Option, die den Status herauszufinden, eine elegantere Weg ist:

Mage::getConfig()->getModuleConfig('modulename')->is('active', 'true') 
+0

Ich mag diese Methode sehr, es ist sehr einfach, aber elegant. Vielen Dank! –

+0

Wo kann ich diesen Code einfügen? – Chester

0

Hier ist eine schnelle Methode, die ich viel benutze.

Mage::getStoreConfig('modulename/general/active') 

Dies basiert auf Ihren Einstellungen.

Verwandte Themen