In Magento wurde mir klar, dass wir unser Modul auf zwei Arten deaktivieren können
- Durch Navigieren im Magento-Backend zu System> Konfiguration> Erweitert> Modulausgabe deaktivieren können wir bestimmte Module einfach deaktivieren.
- Im Verzeichnis app / etc / modules durch Ändern des Active-Tags von true in false.
Darf ich wissen, was genau der Unterschied zwischen diesen beiden Techniken ist? Es ist sehr hilfreich, wenn jemand eine detailliertere Antwort gibt.
magento-1.9
magento-1.8
module
configuration
Charlie
quelle
quelle
Antworten:
System > Configuration > Advanced > Disable
Der Modulausgang deaktiviert dieses Modul nicht. Es funktioniert wie der Name schon sagt, deaktivieren Sie die Modulausgabe.Wenn du siehst
Im
Während
app/etc/modules
vollständig deaktiviert Modulquelle
Durch Navigieren im Magento-Backend zu System> Konfiguration> Erweitert> Modulausgabe deaktivieren können wir bestimmte Module einfach deaktivieren.
- Das bedeutet, dass das Modul nicht gerendert wird, keine Ausgabe auf den Bildschirm sendet, sondern dass das Modul ausgeführt wird. Schauen Sie sich app / code / core / Mage / Core / Block / Abstract.php -> toHtml an
if (Mage :: getStoreConfig ('advanced / modules_disable_output /'. $ this-> getModuleName ())) {return ''; }
Im Verzeichnis app / etc / modules durch Ändern des Active-Tags von true in false.
---- true / false definieren, dass Ihr Modul geladen oder übersprungen wird. Schau mal
app/code/core/Mage/Core/Model/Config.php
->loadModulesConfiguration
quelle
Wenn Sie das so machen
Disable Modules Output
, bedeutet dies, dass das Modul programmtechnisch nichts auf dem Bildschirm rendert: Die_toHtml()
Funktion gibt nichts zurück. Alles andere (Beobachter, Umschreibungen, Controller) wird weiterhin ausgeführt.Wenn Sie ein Modul ordnungsgemäß deaktivieren möchten, setzen Sie im Idealfall "Aktiv" auf
false
und stellen Sie sicher, dass es von keinem anderen Modul erweitert wird.quelle
Configuration > Current Configuration Scope > Advanced > Advanced > Disable Module Output.
Diese Aktion deaktiviert nur die Modulausgabe, wie es heißt. Wenn Ihr Modul verwendet, lassen Sie uns einige Observer-Funktionen zum Einbinden in einen Teil des Systems und zum Überschreiben verwenden, dann werden diese Aktionen nicht deaktiviert.Um das Modul vollständig zu deaktivieren, müssen Sie in die Modulkonfigurationsdatei
/etc/NAMESPACE_MyModule.xml
wechseln und den aktiven Parameter auf false setzen, wie zum Beispiel:quelle
"Modulausgang deaktivieren" deaktiviert nur den von der Erweiterung definierten Bausteinausgang. Die Ausführung des Moduls mit seinem Code wird nicht übersprungen, wenn beispielsweise Beobachter definiert sind.
quelle