diff --git a/plugins/views_plugin_cache.inc b/plugins/views_plugin_cache.inc index 23ab5e1..a047c00 100644 --- a/plugins/views_plugin_cache.inc +++ b/plugins/views_plugin_cache.inc @@ -259,12 +259,18 @@ class views_plugin_cache extends views_plugin { $build_info[$index] = (string)$query; } } + + // remove presentation/output related data. + unset($build_info['title']); + unset($build_info['breadcrumb']); + $key_data = array( 'build_info' => $build_info, 'roles' => array_keys($user->roles), 'super-user' => $user->uid == 1, // special caching for super user. 'language' => $GLOBALS['language']->language, 'base_url' => $GLOBALS['base_url'], + 'exposed_input' => (isset($this->view->exposed_input)) ? $this->view->exposed_input : null, ); foreach (array('exposed_info', 'page', 'sort', 'order', 'items_per_page', 'offset') as $key) { if (isset($_GET[$key])) { @@ -272,7 +278,7 @@ class views_plugin_cache extends views_plugin { } } - $this->_results_key = $this->view->name . ':' . $this->display->id . ':results:' . md5(serialize($key_data)); + $this->_results_key = $this->view->name . ':' . ':results:' . md5(serialize($key_data)); } return $this->_results_key; @@ -288,6 +294,7 @@ class views_plugin_cache extends views_plugin { 'theme' => $GLOBALS['theme'], 'language' => $GLOBALS['language']->language, 'base_url' => $GLOBALS['base_url'], + 'exposed_input' => (isset($this->view->exposed_input)) ? $this->view->exposed_input : null, ); $this->_output_key = $this->view->name . ':' . $this->display->id . ':output:' . md5(serialize($key_data));