Ich habe eine neue Erweiterung geschrieben und versucht, eine Konfigurationseinstellungsdatei in Magento Admin zu erstellen. Wenn ich nach dem Löschen des Caches im Browser ausgeführt werde, wird der folgende Fehler angezeigt
Fatal error: Class 'Mage_GlobalSms_Helper_Data' not found in D:\wamp\www\project\app\Mage.php on line 547
In der Fehlerprotokolldatei system.log habe ich den folgenden Fehler gefunden:
2015-05-27T13:40:43+00:00 ERR (3): Warning: include(Mage\GlobalSms\Helper\Data.php): failed to open stream: No such file or directory in D:\wamp\www\project\lib\Varien\Autoload.php on line 93
2015-05-27T13:40:43+00:00 ERR (3): Warning: include(): Failed opening 'Mage\GlobalSms\Helper\Data.php' for inclusion (include_path='D:\wamp\www\project\app\code\local;D:\wamp\www\project\app\code\community;D:\wamp\www\project\app\code\core;D:\wamp\www\project\lib;.;C:\php\pear') in D:\wamp\www\project\lib\Varien\Autoload.php on line 93
Meine App \ etc \ modules \ file wie folgt:
<?xml version="1.0"?>
<config>
<modules>
<Php_GlobalSms>
<active>true</active>
<codePool>local</codePool>
<version>0.0.1</version>
</Php_GlobalSms>
</modules>
</config>
Meine config.xml wie folgt:
<config>
<modules>
<Ucs_GlobalSms>
<version>0.0.1</version>
</Ucs_GlobalSms>
</modules>
<admin>
<routers>
<adminhtml>
<args>
<modules>
<ucs_globalsms before="Mage_Adminhtml">Ucs_GlobalSms_Adminhtml</ucs_globalsms>
</modules>
</args>
</adminhtml>
</routers>
</admin>
<global>
<helpers>
<globalsms>
<class>Ucs_GlobalSms_Helper</class>
</globalsms>
</helpers>
<models>
<custommodule>
<class>Ucs_GlobalSms_Model</class>
</custommodule>
</models>
<events>
<customer_register_success>
<observers>
<Ucs_GlobalSms_customer_register_success>
<type>singleton</type>
<class>Ucs_GlobalSms_Model_Observer</class>
<method>customerRegisterSuccess</method>
</Ucs_GlobalSms_customer_register_success>
</observers>
</customer_register_success>
</events>
</global>
Mein Helfer / Data.php wie folgt:
<?php
class Php_GlobalSms_Helper_Data extends Mage_Core_Helper_Abstract {
}
Ich kann viele Beiträge auf SO finden, die besagen, dass Data.php fehlt, aber alles ist da, trotzdem erhalte ich einen Fehler
magento-1.9
Schmetterling
quelle
quelle
<webroot>/var/cache
?Antworten:
Ihre Helfererklärung sollte folgendermaßen aussehen:
und Sie sollten Ihren Helfer im Code wie folgt anrufen:
quelle
config.xml
und die Art und Weise, wie Sie den Helfer verwenden, hinzufügenIhr Modulname in
module.xml
unterscheidet sich inconfig.xml
.Ich bin mir nicht sicher, was Sie verwenden möchten,
Php_GlobalSms
oderUcs_GlobalSms
?quelle
Wenn Sie die Kompilierung aktivieren (System> Extras> Kompilierung), müssen Sie sie deaktivieren oder neu kompilieren. Es ist am besten, wenn Sie die Kompilierung deaktivieren, wenn Sie die Entwicklung durchführen.
quelle
Sie müssen Ihren Helfer in der Datei config.xml definieren
quelle
Sie haben gesagt, dass Sie eine Konfigurationseinstellung für den Administratorbereich erstellt haben. In der system.xml-Datei gehe ich davon aus, dass Sie so etwas haben (sollten Sie haben):
Hier versucht Magento, Ihren Helfer zu laden: Es übernimmt die Übersetzung, unabhängig davon, ob Sie den Helfer in einer Ihrer Dateien aufrufen oder nicht. Die anderen Antworten zeigen den richtigen Weg: Aktualisieren Sie Ihre Datei config.xml und teilen Sie Magento mit, dass sich der GlobalSms-Helfer in Ihrem Modul befindet.
quelle
Ich habe das gleiche Problem. Ich habe meine config.xml und mein Layout xml überprüft:
quelle