在 Drupal 7 中禁用节点类型的缓存
Disable caching for a node type in Drupal 7
我想为特定节点类型的节点禁用缓存 'event'。我使用 hook_boot() 并将页面缓存设置为 FALSE。我已经清除缓存,然后在事件类型的一个节点中,我进行了更改,但匿名用户无法看到该页面。它只是提供其缓存的副本。
function hook_boot() {
if ($_GET['q'] != '') {
$url = $_GET['q'];
$nid = substr($url, strrpos($url, '-') + 1);
$type = db_select('node','n')
->fields('n', array('type'))
->condition('n.nid', $nid)
->execute()
->fetchAssoc();
if ($type == 'event') {
drupal_page_is_cacheable(FALSE);
}
}
}
也许这个模块可以帮到你?
https://www.drupal.org/project/cacheexclude
我想为特定节点类型的节点禁用缓存 'event'。我使用 hook_boot() 并将页面缓存设置为 FALSE。我已经清除缓存,然后在事件类型的一个节点中,我进行了更改,但匿名用户无法看到该页面。它只是提供其缓存的副本。
function hook_boot() {
if ($_GET['q'] != '') {
$url = $_GET['q'];
$nid = substr($url, strrpos($url, '-') + 1);
$type = db_select('node','n')
->fields('n', array('type'))
->condition('n.nid', $nid)
->execute()
->fetchAssoc();
if ($type == 'event') {
drupal_page_is_cacheable(FALSE);
}
}
}
也许这个模块可以帮到你? https://www.drupal.org/project/cacheexclude