diff --git a/plugins/views_plugin_cache.inc b/plugins/views_plugin_cache.inc index c604a70..3d93cd0 100644 --- a/plugins/views_plugin_cache.inc +++ b/plugins/views_plugin_cache.inc @@ -260,17 +260,22 @@ class views_plugin_cache extends views_plugin { if (!isset($this->_results_key)) { - $build_info = $this->view->build_info; - - $query_plugin = $this->view->display_handler->get_plugin('query'); - - foreach (array('query','count_query') as $index) { - // If the default query back-end is used generate SQL query strings from - // the query objects. - if ($build_info[$index] instanceof SelectQueryInterface) { - $query = clone $build_info[$index]; - $query->preExecute(); - $build_info[$index] = (string)$query; + if (isset($this->view->query->options['disable_sql_rewrite']) && $this->view->query->options['disable_sql_rewrite']) { + $build_info = $this->view->query->where; + } + else { + $build_info = $this->view->build_info; + + $query_plugin = $this->view->display_handler->get_plugin('query'); + + foreach (array('query','count_query') as $index) { + // If the default query back-end is used generate SQL query strings from + // the query objects. + if ($build_info[$index] instanceof SelectQueryInterface) { + $query = clone $build_info[$index]; + $query->preExecute(); + $build_info[$index] = (string)$query; + } } } $key_data = array(