读/写数据,上面有块上的缓存页面上的块
-
10-10-2019 - |
题
我有一个提供一个块的模块。该块设置为block_no_cache,其内容从函数中取出。它允许站点管理员创建一个“消息”以在网站上显示,就像CNN一样,在顶部显示破坏更新,并且用户可以通过击中X来关闭它。并写信给他们的cookie,这样他们再也看不到该消息了。
我从Boost用户那里收到报告,当有人关闭消息时,它会为所有人关闭。我认为这是因为Boost在有人关闭消息后正在缓存页面并提供缓存页面。
我如何使我的模块为使用Boost的人工作?
我认为也许Hook_boot可能会起作用,但是,我再次不确定是否有更好的方法来解决此问题。
解决方案
hook_boot不会做。该页面在缓存中后,没有运行php。您需要通过Ajax加载该块,因为该块的状态取决于cookie。http://drupal.org/project/ajaxblocks 和 http://drupal.org/project/ajaxify_rigions是2个很容易做到这一点的项目。
同样,如果页面被缓存,很难突破更新。您也将对清漆用户遇到类似的问题。
不隶属于 StackOverflow