2 de mon observateur observe même seulement S'il vous plaît laissez-moi savoir comment puis-je résoudre ce problème et que les deux observateurs sont appelés. p> modulea forte> p> sales_order_shipment_save_before code> événement.
modulea code> était celui que j'ai créé d'abord, puis j'ai créé
moduleb code>
moduleb code> S est appelé et non
modulea Code>. P>
<?php
class My_Bshipment_Model_Observer
{
public function salesOrderShipmentSaveBefore(Varien_Event_Observer $observer)
{
$shipment = $observer->getEvent()->getShipment();
return;
}
}
3 Réponses :
Pas de temps pour tester cela, mais au premier abord, j'essaierais de faire distinct pour chaque module. Quelque chose comme p> et p>
C'est exactement le problème. Vous ne pouvez avoir qu'une seule instance d'un observateur nommé par événement. Chaque observateur aura besoin de son propre nom. Mon standard consiste à utiliser le nom du module comme nom d'observateur. Donc
@Alan Storm, deux ans après votre réponse, n'est pas accepté, mais ça marche? Je suis confronté au même problème, 2 modules différents, il faut capturer le même événement et le deuxième module ne fonctionne pas. Mais si je désactive le premier, alors 2e travaille.
Cette réponse doit être acceptée. Comme les noms d'observateurs doivent être uniques, expéditeur code> et
bistresve code> fonctionnera. Sinon, le dernier nœud XML lue va simplement écraser les observateurs précédents avec le même nom.
Chaque observateur doit avoir un nom unique. Dans le code, les deux observateurs ont le même nom. Donnez un nom unique à chaque observateur. P>
Je pense que vous manquez quelque chose. Vous pouvez appeler autant de fonctions que vous pouvez utiliser des observateurs pour un événement. Mais pour chaque événement, le nom de la méthode de l'observateur doit être différent, ainsi que son identifiant.
<events> <sales_order_shipment_save_before> <observers> <shipmentsave> <type>singleton</type> <class>shipmentsave/observer</class> <method>salesOrderShipmentSaveBefore</method> </shipmentsave> </observers> </sales_order_shipment_save_before> </events> <events> <sales_order_shipment_save_before> <observers> <shipmentsave> <type>singleton</type> <class>bshipment/observer</class> <method>salesOrderShipmentSaveBefore</method> </shipmentsave> </observers> </sales_order_shipment_save_before> </events>
Postez vos deux spécifications d'observateurs (la configuration XML), s'il vous plaît.