在我的自定義模塊中,我在會話變量中設置了一個標誌,並在controller_action_layout_render_before
事件中檢查標誌是否設置,然後附加一個自定義內容。Magento - 加載頁面後執行的最後一個事件名稱
我想在加載頁面後取消設置會話變量中的標誌。
它是如何做到的。
是否有任何事件在頁面加載結束時執行?
在我的自定義模塊中,我在會話變量中設置了一個標誌,並在controller_action_layout_render_before
事件中檢查標誌是否設置,然後附加一個自定義內容。Magento - 加載頁面後執行的最後一個事件名稱
我想在加載頁面後取消設置會話變量中的標誌。
它是如何做到的。
是否有任何事件在頁面加載結束時執行?
的
controller_front_send_response_after
事件應該爲你工作。暫時添加一些記錄到app/Mage.php
public static function dispatchEvent($name, array $data = array())
{
//Mage::Log($name);
file_put_contents('/tmp/event.log',"$name\n",FILE_APPEND);
Varien_Profiler::start('DISPATCH EVENT:'.$name);
$result = self::app()->dispatchEvent($name, $data);
#$result = self::registry('events')->dispatch($name, $data);
Varien_Profiler::stop('DISPATCH EVENT:'.$name);
return $result;
}
可以讓你已經解僱了特定的請求,這是通常足以追查你正在尋找自己的事件事件的列表。
我想你只是爲一個請求的生命存儲一個變量,你可能會考慮使用Magento的註冊表。基本上,你插入一個值爲Mage::register('some_variable_name',$variable);
,並在相同請求中的其他上下文中檢索它Mage::registry('some_variable_name');
有關更多信息,請參閱@Alan Storm的回答here。