Dans ma fonction d'observateur, j'obtiens une variable passée par l'événement comme ça: public function observerFunc(Varien_Event_Observer $observer) { $sth = $observer->getEvent()->getSth(); } Si sthest un objet, je peux le modifier en appelant des méthodes dessus. Mais comment puis-je modifier sths'il s'agit d'une simple chaîne? J'ai essayé ce qui suit sans succès: …
Nous pouvons étendre le contrôleur de deux manières: en utilisant les préférences et en utilisant le plugin. Mais je ne comprends pas cela, lequel est bon et les avantages / inconvénients de préférence par rapport au plugin. <preference for="Magento\Checkout\Controller\Index\Index" type="mymodule\Helloworld\Controller\Index\Index" /> <type name="Magento\Catalog\Model\Product"> <plugin name="getname-test-module" type="mymodule\Helloworld\Model\Plugin\Product" sortOrder="10"/> </type>
L'interception est-elle censée être la méthode préférée lorsqu'il s'agit de modifier le comportement d'une méthode originale dans Magento2 comme les observateurs l'étaient dans magento1? https://wiki.magento.com/display/MAGE2DOC/Using+Interception
J'ai des événements que je souhaite exécuter lorsqu'un client s'inscrit ou enregistre ses coordonnées. Pour cela, j'utilise deux événements: customer_register_success et customer_save_after. Le problème que j'ai est que je finis par exécuter la tâche deux fois car customer_save_after est toujours appelé dans la même exécution que customer_register_success. J'ai essayé de …
J'essaie d'injecter des fonctionnalités dans l' catalog_model_product_duplicateévénement. Une partie de ce module consistera à s'assurer que l'état du stock du produit dupliqué est également dupliqué; actuellement ce n'est pas le cas. Je vois que CatalogInventoryobserve cet événement et met en place des informations boursières standard. Puis-je être assuré que les …
J'ai besoin d'aide!!! Je crée un module qui s'intègre à une autre plateforme via l'API. J'ai déjà reçu l'observateur ou l'événement pour l'inscription du client ( customer_register_success ), achat terminé ( checkout_onepage_controller_success_action ). L'aide dont j'ai besoin est de savoir comment amener l'Observer dans des paniers abandonnés?, Ou quelle serait …
Dans l'extension personnalisée, je crée un observateur comme celui-ci. app\code\Vendor\Extension\etc\frontend\events.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd"> <event name="sales_quote_remove_item"> <observer name="sales_quote_remove_item_handler" instance="Vendor\Extension\Observer\RemovecartbeforeObserver" shared="false" /> </event> </config> Et mon observateur: app\code\Vendor\Extension\Observer\RemovecartbeforeObserver.php use Magento\Framework\Event\ObserverInterface; class RemovecartbeforeObserver implements ObserverInterface { public function execute(\Magento\Framework\Event\Observer $observer) { // HERE IS MY CODE $message = "THIS IS CUSTOM …
J'ai un champ multisélection personnalisé dans la section d'édition des produits. Les valeurs dans les valeurs multisélection de ma table personnalisée. Si je clique sur le bouton Enregistrer dans la section Gérer les produits en sélectionnant une seule valeur. Les modifications doivent être enregistrées dans ma table. Comment puis-je le …
Quelque chose que j'ai remarqué récemment et qui m'intéresse. Exemple 1: l'utilisation de getEvent() Dans Mage_Core_Model_Localela setLocale()méthode, un événement est distribué: Mage::dispatchEvent('core_locale_set_locale', array('locale'=>$this)); Un observateur de cet événement est bindLocale()deMage_Adminhtml_Model_Observer public function bindLocale($observer) { if ($locale=$observer->getEvent()->getLocale()) { if ($choosedLocale = Mage::getSingleton('adminhtml/session')->getLocale()) { $locale->setLocaleCode($choosedLocale); } } return $this; } Comme vous …
Quelqu'un peut-il expliquer la différence entre ces événements. Juste rapide et sale s'il vous plaît. Je vous remercie. J'ai une méthode Observer comme ça: public function detectProductChanges($observer) { $product = $observer->getProduct(); $old = $product->getOrigData(); $new = $product->getData(); if ($product->hasDataChanges() && $old['status'] == 1 && $new['status'] == 2) { $this->_sendStatusMail($product); } …
Dans Magento 1, je peux faire ce qui suit: $response = $observer->getEvent()->getControllerAction()->getResponse(); if(!$response) { return $this; } $html = $response->getBody(); Comment puis-je faire de même dans Magento 2?
Je veux savoir comment utiliser layout.xml avec l'observateur d'événements. Je souhaite afficher un message en pied de page lorsque le paiement a été effectué avec succès. Je sais que je dois utiliser l'événement checkout_onepage_controller_success_action Comment utiliser le contrôleur ou layout.xml avec l'observateur d'événements?
J'ai créé un modèle qui a sa propre table de base de données. Pour une personnalisation, je dois déclencher un save_beforeévénement de ce modèle. Si une valeur de champ ne correspond pas, les données ne doivent pas être enregistrées. Mon objectif principal est d'empêcher l'enregistrement des données à l'aide de …
J'écoute l' événement sales_quote_save_before pour savoir quand un article est ajouté au panier. Une fois son tir, j'itère les options des articles comme ceci: $quote = $observer->getEvent()->getQuote(); foreach ($quote->getAllItems() as $item) { $options = $item->getProduct()->getTypeInstance(true)->getOrderOptions($item->getProduct()); foreach($options['options'] as $option) { if($option['label'] == 'myOptionA') { // Here I want to change the …
Est-il possible de stocker des données dans la session ou le registre Magento en utilisant la fonction d'observateur, avec: Mage::getSingleton('core/session')->setFoo('bar'); //Or 'customer/session', 'admin/session' Ou Mage::register('foo', 'bar'); J'ai essayé d'ajouter sesson_write_close(); Mais seulement réussi à lire les données de session.
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.