新闻中心
WordPress管理员后台登录失败自动返回后台登陆页面
作者 / 无忧主机 时间 2012-11-25 13:47:13
Wordpress这个程序如果开启用户注册的话,在小工具里添加登录功能在某个页面点击登录就会跳转到后台,这样让访客很困扰的,弄不好可能会丢失一些用户的,所以要是有一种方法可以登录完成后返回到登录前的页面就完美了,下面无忧主机(www.51php.com)小编为大家介绍一下这个实现这个功能的方法。 首先使用FTP工具登录php虚拟主机到wordpress程序目录下把wp-login.php文件下载到本地然后使用文本工具打开,在<?php下面添加下列代码。
if
(!isset($_SESSION))
{
session_start(); //创建一个session会话
session_regenerate_id();
}
if
(isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] != ''
&&
strpos($_SERVER['HTTP_REFERER'],'admin') == false
&&
strpos($_SERVER['HTTP_REFERER'],'login') == false)
{
// 登陆前的页面地址
// 如果你想登陆后返回首页,请将 $_SERVER['HTTP_REFERER'] 改成 'http://你的首页网址'
$_SESSION["REFERER"] =
$_SERVER['HTTP_REFERER'];
}
添加好后使用文本工具的搜索功能查找下面的代码。
<input type="hidden" name="redirect_to" value="<?php echo esc_attr($redirect_to); ?>" />查找出来后把它修改成下列的代码。
<input type="hidden" name="redirect_to" value="<?php if (
isset($_SESSION["REFERER"]) ) { echo $_SESSION["REFERER"];
} else { echo esc_attr($redirect_to); } ?>" />
添加完成后保存文件上传会空间,大家在修改代码的时候记得把源文件备份,复制代码的时候千万要注意不要复制到空格,不然会导致网站保存的,做了备份可以让操作有可逆性,保险安全。
这个文件因为是wordpress的重要文件所以升级版本都会生成新的把老的覆盖所以如果做了这个功能的网站在升级前可以做下wp-login.php的备份升级后重新覆盖一下,最好是推荐在重新做一遍,因为升级本身就是把添加新的功能和减少漏洞,用老的文件这样还是不好的,所以大家自己斟酌一下。
纯Linux环境下高端免备案【香港独立IP地址】php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名
本文地址:https://www.51php.com/wordpress/10027.html


