J'ai écrit une nouvelle extension et j'essaie de créer un fichier de paramètres de configuration dans Magento Admin. Lorsque je lance sur le navigateur après avoir effacé le cache, je reçois l'erreur comme ci-dessous
Fatal error: Class 'Mage_GlobalSms_Helper_Data' not found in D:\wamp\www\project\app\Mage.php on line 547
Dans le fichier journal des erreurs system.log, j'ai trouvé l'erreur ci-dessous:
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
Mon fichier app \ etc \ modules \ comme ci-dessous:
<?xml version="1.0"?>
<config>
<modules>
<Php_GlobalSms>
<active>true</active>
<codePool>local</codePool>
<version>0.0.1</version>
</Php_GlobalSms>
</modules>
</config>
Mon config.xml comme ci-dessous:
<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>
Mon Helper / Data.php comme ci-dessous:
<?php
class Php_GlobalSms_Helper_Data extends Mage_Core_Helper_Abstract {
}
Je peux trouver beaucoup de messages sur SO disant que Data.php est manquant, mais tout est là, je reçois toujours une erreur
magento-1.9
Papillon
la source
la source
<webroot>/var/cache
?Réponses:
Votre déclaration d'aide devrait ressembler à ceci:
et vous devez appeler votre assistant dans le code comme ceci:
la source
config.xml
et la façon dont vous utilisez l'aideLe nom de votre module dans
module.xml
est différent dansconfig.xml
.Je ne sais pas moi-même ce que tu veux utiliser,
Php_GlobalSms
ouUcs_GlobalSms
?la source
Si vous activez la compilation (Système> Outils> Compilation), vous devez la désactiver ou la recompiler. Il est préférable de désactiver la compilation lors du développement.
la source
Vous devez définir votre assistant dans le fichier config.xml
la source
Vous avez dit que vous avez créé un paramètre de configuration pour la zone d'administration; dans le fichier system.xml, je suppose que vous avez quelque chose comme ça (vous devriez avoir):
C'est là que Magento essaie de charger votre assistant: il gère la traduction, indépendamment du fait que vous l'appeliez dans l'un de vos fichiers ou non. Les autres réponses indiquent la bonne façon: mettez à jour votre fichier config.xml et dites à Magento que l'assistant GlobalSms réside dans votre module.
la source
J'ai le même problème. J'ai vérifier mon config.xml et vérifier mon layout xml:
la source