Quel est le dernier événement avant que le contenu est EXPEDIE envoyé au navigateur?

magento.stackexchange https://magento.stackexchange.com/questions/176

  •  16-10-2019
  •  | 
  •  

Question

Je dois définir ou mettre à jour un cookie, mais je veux faire en sorte que tous (ou autant que possible) du traitement de la demande se produit avant que mon code de génération cookies fonctionne. à savoir si l'utilisateur se connecte à, je veux faire en sorte que le traitement de connexion a eu lieu avant mes courses de code, ou si l'utilisateur ajoute quelque chose à leur panier Je veux savoir que tout le traitement de la commande est faite en premier.

Y at-il des événements qui sont distribués immédiatement avant une réponse est envoyée au navigateur?

Était-ce utile?

La solution

Le dernier événement distribué dans 1.x Magento avant que le contenu est rendu est

controller_front_send_response_after

S'il n'y a pas d'exigences supplémentaires dans les données d'observation que vous auriez besoin, celui-ci devrait être parfait pour vous.

Autres conseils

Une astuce bien pratique, pour trouver des événements déclenchés lors d'une demande de page / action est temporairement modifier app / Mage.php et écrire les événements déclenchés à var / log / system.log

 public static function dispatchEvent($name, array $data = array())
    {
        Varien_Profiler::start('DISPATCH EVENT:'.$name);
        $result = self::app()->dispatchEvent($name, $data);
        Varien_Profiler::stop('DISPATCH EVENT:'.$name);
        return $result;
    }

à

public static function dispatchEvent($name, array $data = array())
    {
        if(mage::getIsDeveloperMode()) {
           mage::log($name);
        }
        Varien_Profiler::start('DISPATCH EVENT:'.$name);
        $result = self::app()->dispatchEvent($name, $data);
        Varien_Profiler::stop('DISPATCH EVENT:'.$name);
        return $result;
    }

et puis la queue dans le fichier journal. J'ai trouvé cette méthode extrêmement utile, et sauvé beaucoup de temps à la chasse pour cet événement difficile à atteindre à l'utilisation.

Bien entendu, vous devez supprimer immédiatement, que vous ne voulez pas valider les fichiers de base modifiés. J'enveloppe dans le contrôle de développeur, juste au cas où.

Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange
scroll top