Domanda

ho un check-in alla cassa, che sputa fuori un errore quando si va a presentare comunque l'unico modo per correggere l'errore è quello di tornare nel carrello e regolare quello che hai dentro, attualmente io uso questo codice [ MODULO] \ modello \ Giftcard.php

Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('checkout/cart'))->sendResponse();
Mage::throwException("Gift Card is not currently active", 'core/session');

quello che succede è che ottengo il messaggio di errore, ma non lo fa di nuovo reindirizzamento al carrello

qualcuno sa quello che sto facendo male qui

È stato utile?

Soluzione

Quando si lancia un diritto di errore dopo il codice per reindirizzare l'esecuzione si fermerà sull'errore gettato e il gioco è fatto.

Se si desidera mostrare un errore per l'utente si prega di utilizzare lo stack messaggio sessione.

Mage::getSingleton('checkout/session')->addError("Gift Card is not currently active");
Mage::app()->getFrontController()->getResponse()->setRedirect(Mage::getUrl('checkout/cart'))->sendResponse();

Altri suggerimenti

Si può anche provare questo in [MODULO] \ modello \ Giftcard.php:

$redirectUrl= Mage::getUrl('checkout/cart');
Mage::getSingleton('checkout/session')->setRedirectUrl($redirectUrl);  
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange
scroll top