function drupal_flush_all_caches in Drupal 7
Same name and namespace in other branches
- 8 core/includes/common.inc \drupal_flush_all_caches()
- 6 includes/common.inc \drupal_flush_all_caches()
- 9 core/includes/common.inc \drupal_flush_all_caches()
Flushes all cached data on the site.
Empties cache tables, rebuilds the menu cache and theme registries, and invokes a hook so that other modules' cache data can be cleared as well.
14 calls to drupal_flush_all_caches()
- AggregatorRenderingTestCase::testBlockLinks in modules/
aggregator/ aggregator.test - Adds a feed block to the page and checks its links.
- BlockTestCase::testBlockRehash in modules/
block/ block.test - Test _block_rehash().
- CacheClearCase::testFlushAllCaches in modules/
simpletest/ tests/ cache.test - Test drupal_flush_all_caches().
- DrupalWebTestCase::resetAll in modules/
simpletest/ drupal_web_test_case.php - Reset all data structures after having enabled new modules.
- EnableDisableTestCase::testEntityInfoChanges in modules/
system/ system.test - Ensures entity info cache is updated after changes.
File
- includes/
common.inc, line 7762 - Common functions that many Drupal modules will need to reference.
Code
function drupal_flush_all_caches() {
// Change query-strings on css/js files to enforce reload for all users.
_drupal_flush_css_js();
registry_rebuild();
drupal_clear_css_cache();
drupal_clear_js_cache();
// Rebuild the theme data. Note that the module data is rebuilt above, as
// part of registry_rebuild().
system_rebuild_theme_data();
drupal_theme_rebuild();
entity_info_cache_clear();
node_types_rebuild();
// node_menu() defines menu items based on node types so it needs to come
// after node types are rebuilt.
menu_rebuild();
// Synchronize to catch any actions that were added or removed.
actions_synchronize();
// Don't clear cache_form - in-progress form submissions may break.
// Ordered so clearing the page cache will always be the last action.
$core = array(
'cache',
'cache_path',
'cache_filter',
'cache_bootstrap',
'cache_page',
);
$cache_tables = array_merge(module_invoke_all('flush_caches'), $core);
foreach ($cache_tables as $table) {
cache_clear_all('*', $table, TRUE);
}
// Rebuild the bootstrap module list. We do this here so that developers
// can get new hook_boot() implementations registered without having to
// write a hook_update_N() function.
_system_update_bootstrap_status();
}