Nella mia funzione di osservatore, ottengo una variabile passata dall'evento in questo modo: public function observerFunc(Varien_Event_Observer $observer) { $sth = $observer->getEvent()->getSth(); } Se sthè un oggetto, posso modificarlo chiamando metodi su di esso. Ma come posso modificare sthse è una stringa semplice? Ho provato quanto segue senza successo: public function …
Possiamo estendere il controller in due modi: usando le preferenze e usando il plugin. Ma non lo capisco, quale è buono e vantaggi / svantaggi delle preferenze rispetto al plug-in. <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'intercettazione intende essere il metodo preferito quando si tratta di cambiare il comportamento di un metodo originale in Magento2 come gli osservatori erano in magento1? https://wiki.magento.com/display/MAGE2DOC/Using+Interception
Ho eventi che desidero eseguire quando un cliente si registra o salva i propri dettagli. Per questo, sto usando due eventi: customer_register_success e customer_save_after. Il problema che sto riscontrando è che finisco per eseguire l'attività due volte poiché customer_save_after viene sempre chiamato nella stessa esecuzione di customer_register_success. Ho provato a …
Sto tentando di iniettare funzionalità catalog_model_product_duplicatenell'evento. Parte di questo modulo sarà garantire che anche lo stato delle scorte del prodotto duplicato sia duplicato; attualmente non lo è. Vedo che CatalogInventoryosserva questo evento e imposta alcune informazioni standard di borsa. Posso essere certo che gli eventi chiave vengano risolti prima dei …
Ho bisogno di aiuto!!! Sto creando un modulo che si integra con un'altra piattaforma tramite API. Ho già ricevuto l'osservatore o l'evento per la registrazione del cliente ( customer_register_success ), l'acquisto è stato completato ( checkout_onepage_controller_success_action ). L'aiuto di cui ho bisogno è come posso ottenere l'osservatore su carrelli abbandonati? …
Nell'estensione personalizzata, creo un osservatore come questo. 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> E il mio osservatore: 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 ERROR …
Ho un campo personalizzato a selezione multipla nella sezione Modifica prodotti. I valori nei valori a selezione multipla dalla mia tabella personalizzata. Se faccio clic sul pulsante Salva nella sezione Gestisci prodotti selezionando un valore qualsiasi. Le modifiche devono essere salvate nella mia tabella. Come posso farlo con Observer.
Qualcosa che ho notato di recente e ne sono curioso. Esempio 1: l'uso di getEvent() Nel Mage_Core_Model_Localenel setLocale()metodo, un evento viene inviato: Mage::dispatchEvent('core_locale_set_locale', array('locale'=>$this)); Un osservatore per questo evento viene bindLocale()daMage_Adminhtml_Model_Observer public function bindLocale($observer) { if ($locale=$observer->getEvent()->getLocale()) { if ($choosedLocale = Mage::getSingleton('adminhtml/session')->getLocale()) { $locale->setLocaleCode($choosedLocale); } } return $this; } Come …
Qualcuno può spiegare la differenza tra questi eventi. Solo il veloce e sporco per favore. Grazie. Ho un metodo Observer in questo modo: 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); } } …
In Magento 1 posso fare quanto segue: $response = $observer->getEvent()->getControllerAction()->getResponse(); if(!$response) { return $this; } $html = $response->getBody(); Come posso fare lo stesso in Magento 2?
Voglio sapere come usare layout.xml con l'osservatore di eventi. Voglio mostrare un messaggio a piè di pagina quando il pagamento viene eseguito correttamente. So che devo usare l'evento checkout_onepage_controller_success_action Come utilizzare controller o layout.xml con l'osservatore di eventi?
Ho creato un modello che ha una propria tabella di database. Per una personalizzazione devo attivare l' save_beforeevento di questo modello. Se un valore di campo non corrisponde, i dati non devono essere salvati. Il mio obiettivo principale è impedire il salvataggio dei dati utilizzando l'evento "prima del salvataggio" Il …
Sto ascoltando l' evento sales_quote_save_before per notare quando un articolo viene aggiunto al carrello. Una volta sparato, ripasso le opzioni degli oggetti in questo modo: $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 …
È possibile memorizzare i dati nella sessione o nel registro di Magento utilizzando la funzione osservatore, con: Mage::getSingleton('core/session')->setFoo('bar'); //Or 'customer/session', 'admin/session' O Mage::register('foo', 'bar'); Ho provato ad aggiungere sesson_write_close(); Ma sono riuscito solo a leggere i dati della sessione.
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.