Klasse 'mage_adminnotification_helper_data' nicht gefunden (wenn es tatsächlich vorhanden ist)
-
16-10-2019 - |
Frage
Ab und zu bekommen wir immer wieder den Fehler:-
PHP Fatal error: Class 'Mage_Adminnotification_Helper_Data' not found in /var/www/vhosts/domain.co.uk/httpdocs/app/Mage.php on line 546
Dies führt dazu, dass das Backend einen internen Serverfehler 500 erzeugt, und der obige Fehler wird bei jedem Versuch, im Backend zuzugreifen, protokolliert, wenn Sie versuchen, auf eine URL zuzugreifen.
Bei der Inspektion alles in app/code/core/Mage/AdminNotification
ist vorhanden und vollständig intakt.
Um das Problem zu beheben, nehme ich eine weitere Kopie des obigen Pfades von einem Arbeitsplatz und überschreibe diesen. Cache löschen und dann behoben, kann erneut auf das Backend zugreifen.
Ich habe einen Vergleich zwischen dem ausgeführt AdminNotification
Ordner und alles sein Inhalt für die Version, die wir ersetzt haben, und die Version, die ersetzt wurde. Jedes einzelne Ding in beiden Ordnern ist identisch. Das Ersetzen durch das, was bereits dort war, behinderte das Problem. Seltsam.
Ist es möglich, dass eine Erweiterung der Drittanbieter, die Posteingangsmeldungen im Backend dient, irgendwie die Ursache dafür sein könnte? Vielleicht versuchen Sie, diese Klasse falsch zu erweitern oder etwas in dieser Richtung? Ihr Rat/Vorschläge wird sehr geschätzt.
Lösung
Nach dem, was ich in der Fehlermeldung sehe, gibt es ein Problem. Die Klasse in Ihrer Fehlermeldung ist Mage_Adminnotification_Helper_Data
und die Klasse sollte benannt werden Mage_AdminNotification_Helper_Data
. Beachten Sie den Großbuchstaben N
Das ist Kleinbuchstaben in der Fehlermeldung. Es gibt eine Änderung, die Sie in Ihrer Annahme richtig haben. Es könnte eine Erweiterung der Drittanbieter sein, die versucht, außer Kraft zu stehen Mage_Adminnotification_Helper_Data
.
Aber wenn Sie sagen, dass das Überschreiben der Dateien in der AdminNotification
Ordner löste das Problem. Es besteht die Möglichkeit, dass jemand die Kerndateien zuvor geändert hat.
zusätzliche Information
Auch wenn die Klassennamen in PHP nicht sensibel sind Mage/Adminnotification/Helper/Data
.
Andere Tipps
Bitte beachten Sie das große "n" in der Verwaltung. Magento sucht Admin*n*Otification, während nur Admin*N*Otification ist vorhanden.
Dies liegt wahrscheinlich daran, dass die Modul mage_adminnotification deaktiviert ist, aber es gibt immer noch einen Verweis darauf, wahrscheinlich durch einige Übersetzungsfunktionen in einem anderen Modul. Bitte machen Sie in Ihrer Magento -Installation eine FullText -Suche nach "adminotification" (App/Core sollte wahrscheinlich ausreichen) und überspringen Sie die Modul mage_adminnotification. Sie werden dann wissen, welches Modul den Anruf an mage_adminnotification_helper_data verursacht.