Thread:Project:Support desk/Protect Special pages/reply (8)

The above code snippet by Mark has just a little typo error: miss a ")". But it works great! Just some difference: So you can do it adding this row:
 * Use isLoggedIn instead of isAllowed
 * Enable the "Login Page" (that is a Special page)

function disableAllSpecialPages(&$list) { global $wgUser; if(!$wgUser->isLoggedIn) { $list = array; // Enable Login page $list['Userlogin'] = "LoginForm"; } return true; } $wgHooks['SpecialPage_initList'][]='disableAllSpecialPages';