2010-11-15 62 views
0

我有一個提供塊的模塊。該塊被設置爲BLOCK_NO_CACHE,並且其內容被從函數中拉出。它允許網站管理員創建一個「消息」在網站上顯示,類似於CNN,在頂部顯示中斷更新,用戶可以通過點擊關閉它。關閉時,操作將被寫入和UUID寫入他們的cookie,以便他們不再看到該消息。使用Boost高速緩存頁面上的塊讀/寫數據

我從Boost用戶那裏得到報告,當有人關閉一條消息時,它會關閉它給所有人。我認爲這是因爲Boost正在緩存頁面並在某人關閉該消息後提供緩存頁面。

如何讓我的模塊對使用Boost的人員有效?

我想也許hook_boot可能會工作,但是,然後,我不知道是否有更好的方法來解決這個問題。

回答

1

hook_boot不會這樣做。一旦該頁面在緩存中,就不會運行PHP。您需要通過AJAX加載該塊,因爲該塊的狀態取決於Cookie。 http://drupal.org/project/ajaxblockshttp://drupal.org/project/ajaxify_regions 是2個項目,很容易做到這一點。

此外,如果頁面被緩存,將很難得到更新。清漆用戶也會遇到類似的問題。

+0

謝謝。我一直想知道這一點。 – Kevin 2010-11-18 13:45:37