discuz 自定义退出时的跳转地址
需求
如果我们想在discuz退出后跳转到其他页面,比如说另外定制的一个页面,该怎么做呢?
知识
discuz处理退出时的跳转地址的文件是source\class_member.php
具体步骤
假如我们有一个logout.html
的文件,需要在discuz退出后跳转到它
打开source\class_member.php
,找到on_logout()
函数
修改为如下代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function on_logout() {
global $_G;
$ucsynlogout = $this->setting['allowsynlogin'] ? uc_user_synlogout() : '';
if($_G['gp_formhash'] != $_G['formhash']) {
header("Location: logout.html");//在这里设置跳转地址
/*showmessage('logout_succeed', '../logout.html', array('formhash' => FORMHASH, 'ucsynlogout' => $ucsynlogout));干掉showmessge函数*/
}
clearcookies();
$_G['groupid'] = $_G['member']['groupid'] = 7;
$_G['uid'] = $_G['member']['uid'] = 0;
$_G['username'] = $_G['member']['username'] = $_G['member']['password'] = '';
$_G['setting']['styleid'] = $this->setting['styleid'];
header("Location: logout.html");//在这里设置跳转地址
/*showmessage('logout_succeed', '../logout.html', array('formhash' => FORMHASH, 'ucsynlogout' => $ucsynlogout));干掉showmessge函数*/
}
这里showmessage函数的作用是显示对话框,告诉用户已经退出了discuz,我们不需要这个对话框,所以把它注释了,有关showmessage函数的具体使用请自行谷歌
本文由作者按照 CC BY 4.0 进行授权
Comments powered by Disqus.