Какое последнее событие отправилось до отправки контента в браузер?

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

  •  16-10-2019
  •  | 
  •  

Вопрос

Мне нужно установить или обновить файл cookie, но я хочу убедиться, что все (или максимально возможное) обработку запроса произошли до запуска моего кода генерации cookie. То есть, если пользователь входит в систему, я хочу убедиться, что обработка входа в систему произошла до запуска моего кода, или если пользователь добавляет что -то в свою корзину, я хочу знать, что вся обработка корзины выполняется в первую очередь.

Есть ли какие -либо события, которые отправляются непосредственно перед тем, как ответ отправит в браузер?

Это было полезно?

Решение

Последнее событие, отправленное в Magento 1.x, до того, как содержится

controller_front_send_response_after

Если в данных наблюдателя нет дополнительных требований, которые вам понадобятся, этот должен быть идеальным для вас.

Другие советы

Удобный трюк, чтобы найти события, запускаемые во время запроса страницы/действия, - временно редактировать app/mage.php и написать события, запускаемые в 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;
    }

а затем заверните файл журнала. Я нашел этот метод чрезвычайно полезным и сэкономил много времени на охоту на это неуловимое событие для использования.

Естественно, вы должны немедленно удалить его, так как вы не хотите совершать измененные файлы основных. Я обертываю его в проверку разработчика, на всякий случай.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top