Extension:CacheManager

The Cache Manager extension enhances the default file caching. The default system caches aggressively: pages are cached unconditionally even if they contain variables, extensions and other changeable output. With this extension, you can specify each page that should not be cached: it uses a special tab on top of each page to specify not to cache it.

Download
Cut and paste the code found below and place it in. Note: $IP stands for the root directory of your MediaWiki installation, the same directory that holds LocalSettings.php.

Database
To install this extension, create a new table in your mediawiki database :

Files
To install this extension, add the following to LocalSettings.php:

Configuration
The extension introduces a new user rights managecache. You can configure the rights in LocalSettings.php. These are the defaults:

Code
");
 * CacheManager.php

return false; } elseif($action == 'ask_uncache') { $action = $wgArticle->getTitle->escapeLocalUrl."?action=page_uncache"; $wgOut->addHTML(" ");

return false; }		elseif( $action == 'page_cache' ){

# Cache the page : delete the id of the page in the table page_uncache $dbw = wfGetDB( DB_MASTER ); $ns = $wgArticle->mTitle->getNamespace; $t  = $wgArticle->mTitle->getDBkey; $id = $wgArticle->mTitle->getArticleID; if ( $t == '' || $id == 0 || $ns == NS_SPECIAL ){ $wgOut->addHTML( wfMsgHtml('caching_impossible') ); return false; }			if($dbw->delete('page_uncache', array('page_id'=>$id))) $wgOut->addHTML( wfMsgHtml('caching_done') ); else $wgOut->addHTML( wfMsgHtml('caching_impossible') ); return false; }		elseif( $action == 'page_uncache' ){ # Uncache the page : add the id of the page in the table page_uncache $dbw = wfGetDB( DB_MASTER ); $ns = $wgArticle->mTitle->getNamespace; $t  = $wgArticle->mTitle->getDBkey; $id = $wgArticle->mTitle->getArticleID; if ( $t == '' || $id == 0 || $ns == NS_SPECIAL ){ $wgOut->addHTML( wfMsgHtml('uncache_impossible') ); return false; }			if($dbw->insert('page_uncache', array('page_id' => $id))) $wgOut->addHTML( wfMsgHtml('uncaching_done') ); else $wgOut->addHTML( wfMsgHtml('uncaching_impossible') ); return false; }		return true; }	function ManageCache($wgArticle) {		$dbw = wfGetDB( DB_MASTER ); $id = $wgArticle->mTitle->getArticleID; $res = $dbw->select( 'page_uncache', 'page_id', 'page_id='.$id ); return $dbw->fetchObject( $res ) === false; } }


 * CacheManager.i18n.php