Extension:RedirectAfterLogout

MediaWiki extensions manual
RedirectAfterLogout
Release status: unmaintained
Implementation User activity
Description Allows wiki administrators to redirect to a specific page after a user has logged out
Author(s) Marcel Minke (Maziminketalk)
Latest version 1.0 (2008-12-01)
MediaWiki 1.14+
Database changes No
License Public domain
Download See section code
$wgPageToRedirectAfterLogout

The RedirectAfterLogout extension is an adaption of the former RedirectOnLogin extension which allows you to redirect a user to a certain wiki page after having logged out.

Compatibility

edit

The extension was created for MW 1.14a. Nevertheless this extension should work fine on all MediaWiki versions which support UserLogout hook and $wgOut->redirect().

Please update this page when you have tested the extension on other versions.

Tested on
  • 1.11.0
  • 1.13
  • 1.14
  • 1.17
  • 1.21.1
  • 1.25.2
  • ... (please add other tested versions)

Installation

edit
  1. Create a page at "extensions/redirectAfterLogout.php" containing the code
  2. Add the following lines to your Localsettings.php file and adapt them:
//absolute path from web root
require_once("extensions/redirectAfterLogout.php");

//wiki page to redirect to (adjust path and page title)
$wgPageToRedirectAfterLogout = "/path_to_mediawiki/index.php?title=yourpage";

Code

edit
<?php
//not called from the software -> show warning
if( ! defined( 'MEDIAWIKI' ) ) {
    echo( "This file is an extension to the MediaWiki software, and cannot be used standalone.\n" );
    die( 1 );
}
 
$wgExtensionCredits['other'][] = array(
    'name'=>'RedirectAfterLogout',
    'version'=> '1.0',
    'author'=>'Marcel Minke',
    'url'=>'https://www.mediawiki.org/wiki/Extension:RedirectAfterLogout',
    'description' => 'Redirect to a certain page after logout'
);
 
//wiki page to redirect to (adjust path and page title)
$wgPageToRedirectAfterLogout = "/path_to_mediawiki/index.php?title=yourpage"; 
 
$wgHooks['UserLogout'][] = 'redirectAfterLogout';
 
function redirectAfterLogout(&$user) {
        global $wgOut, $wgPageToRedirectAfterLogout;
        $wgOut->redirect( $wgPageToRedirectAfterLogout );        
        
        return true;
}