下载帮

您现在的位置是:首页 > CMS教程 > WordPress

WordPress

WordPress后台登录不上的几个解决办法

2020-04-27 10:37WordPress

问题表现:输入http://xxx.com/wp-admin 会自动跳转为 http://www.xxxxx.com/wp-login.php?redirect_to=http://www.xxxxx.com/wp%2Dadmin/&reauth=1 。重复跳转且导致后台无法登录!

解决方案一(测试有效):

WordPress替换登陆后跳转的后台默认首页

WordPress登陆后默认显示的”仪表盘”页面,也就是之前所说的”控制板”页面,其实这个”仪表盘”页面实际意义真的不大。前两天帮一个用户定制一个主题的时候就出现过这个需求,需要跳转到他指定的页面,现在把方法分享一下。

使用文本编辑器打开当前主题目录下的 functions.php,在末尾加上以下php代码:


	
function my_login_redirect($redirect_to, $request){
if( empty( $redirect_to ) || $redirect_to == 'wp-admin/' || $redirect_to == admin_url() )
return home_url("/wp-admin/edit.php");
else
return $redirect_to;
}
add_filter("login_redirect", "my_login_redirect", 10, 3);
 

其中第10行的:/wp-admin/edit.php,就是登陆后要跳转的后台页面地址,这里设置成所有文章页面,如果你想登陆后跳转到写文章页面,可以改成:/wp-admin/post-new.php,其他的依此类推。

注意:如果你的WordPress安装在子目录,如wp目录,那么第10行中的地址应该加上子目录,如 /wp/wp-admin/edit.php

如果你想登录后跳转到站内任何一个网址,请将9-11行代码替换成:


	
$redirect_to = 'http://这里填你的网址';
 

如果你非得让 wp-admin/index.php 完全消失,手工输入网址 …/wp-admin/ 也要让它跳转到所有文章页面,那你就在用文本编辑器打开 wp-admin/index.php ,将第一个 <?php 改成:


	
<?php
header("Location: http://…/wp-login.php");
exit();
 

其中 http://…/wp-admin/ 是你的后台网址。这样修改的缺点是,每次WordPress更新,你就得重新修改一次。

解决方案二:

问题再次描述:

今天登陆一个程序是我用wp做的网站 我想也会有很多朋友遇到过这样的情况吧 当输入 http://www.xxxxx.com/wp-admin/ 后台会自己跳转成大概类似的网址字符 如下 http://www.xxxxx.com/wp-login.php?redirect_to=http://www.xxxxx.com/wp%2Dadmin/&reauth=1 输入密码登陆 没有任何反应 一直保持在登陆的界面那里,在重复的确认密码没有错误的时候,就算换了浏览器也没有效果的,试了几个方法都没有用,最后无奈搞到重装wordpress,结果是也是没有用的 最后在论坛上看到下面这个方法就解决了。

方法如下:登陆后台目录 打开文件 /wp-includes/pluggable.php ,修改 wp_set_auth_cookie 函数 在 pluggable.php 文件找到以下代码:


	
setcookie($auth_cookie_name, $auth_cookie, $expire, ADMIN_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);
 

把它替换成:


	
setcookie($auth_cookie_name, $auth_cookie, $expire, SITECOOKIEPATH, COOKIE_DOMAIN, $secure, true);
 

不要管是第几行的,因为每一次wp更新版本的时候 都是不一样的 你就直接用 ctrl+f 查找替换就可以了 导致这样的情况的原因如下:(主要就是更改cookie的作用目录,由原来的“/wp-admin”变成根目录“/”。问题大概是由于无法跨目录读取用户的cookie导致的)

写了这段代码以后 输入 http://www.xxxxx.com/wp-admin/ 还是会跳转到 http://www.xxxxx.com/wp-login.php?redirect_to=http://www.xxxxx.com/wp%2Dadmin/&reauth=1 但是输入密码登陆后台 已经可以登陆了

如果你也遇到这样的情况不妨用这个方法试试看 这也许是wp升级导致的结果 !

文章评论