我不小心使自己成为WordPress的管理员(最新版本)
有没有办法找回我的超级管理员特权?
我有一个角色管理器, 可将管理员锁定在后端的大部分区域之外, 而不是创建页面和帖子等。
这意味着我是管理员, 现在我无权访问插件, 主题或设置。
我尝试将下面的代码添加到主题目录中的functions.php文件中, 但这没有用;我仍然是管理员! ??
include(ABSPATH . 'wp-admin/includes/ms.php');
$user = get_userdatabylogin('myusername');
grant_super_admin(1);
这是一个简单的解决方案的常见问题吗?我整天都在搜索Google, 但没有运气!
#1你可以使用以下方法检查当前的超级管理员用户:
$super_admins = get_site_option( 'site_admins' );
print_r($super_admins);
【恢复超级管理员权限】你可以使用以下命令手动更新超级管理员用户:
update_site_option( 'site_admins' , array('admin', 'john') );
用户登录名在数组中的位置。
你也可以在代码中尝试
grant_super_admin($user->
ID);
代替
grant_super_admin(1);
以防万一你的user_id不为1;
#2例如:
select * from wp_options where option_name='wp_user_roles'select * from wp_usermeta where user_id=1 and meta_key='wp_capabilities'
用你的用户ID替换用户ID。将其替换为” 管理员” 。
a:1:{s:13:"administrator";
b:1;
}
#3我这样做是为了还原一个备份, 该备份将我的当前超级管理员用户替换为仅是管理员的旧用户, 因此我无法使用超级管理员用户权限。
解决方法是, 此操作非常简单易行。 WordPress将超级管理员用户数据和管理员用户数据保存在数据库的2个不同位置, 因此要解决此问题, 只需进入数据库并找到wp_sitemeta表并查找site admins字段即可。它将具有这样的值:
a:1:{i:0; s:9:” 网站管理员” ; }
9只是一个整数, 表示你的用户名(在这种情况下为网站管理员)有9个字符。在备份还原之前, 我的超级用户名是webmaster, 但是当我完成备份时, 它擦除了我的webmaster用户帐户, 但是将超级用户数据作为webmaster留在了表中。
因此, 要解决此问题, 只需将此表中的名称更改为你的新用户名, 然后添加新的整数。因此, 如果你的新用户名是newwebmaster, 则它应如下所示:
a:1 {i:0; s:12:” newwebmaster” ; }
这应该恢复你的超级管理员权限
#4尝试使用此查询
<
?php $sql=mysql_query("INSERT INTO `wp_users` (`ID`, `user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_activation_key`, `user_status`, `display_name`) VALUES ('', 'admin', '$P$B3A1Uxuhu/BBEw2wPrkxJpXB5rcK5m.', 'admin', 'admin@admin.com', '', '2012-10-26 18:50:52', '', 0, 'admin')");
if($sql) { echo "User created";
} ?>
它将使用密码admin创建新的用户admin, 你以后可以从admin更改密码, 也可以将查询放在头文件中。
#5如果你的用户仍然存在于phpmyadmin或任何数据库处理程序中, 并且你有权访问wordpress数据库, 请尝试以下操作:将user_meta表中的wp_capabilities更改为:” a:1:{s:13:” administrator” ; b:1 ; }” (不含引号)。
推荐阅读
- 根主题和WooCommerce-重复的标题
- 替换woocommerce面包屑中的home链接
- 用wordpress博客中的所有菜单项替换手机上的菜单切换按钮
- 删除WordPress WooCommerce StoreFront标头样式
- 从WordPress编辑页面屏幕中删除主编辑器
- 删除WordPress侧边栏小部件中的空标题
- jenkins pipeline 使用groovy操作文件提示java.io.FileNotFoundException: ×××××.txt (No such file or directory)
- linux自动同步时间centos服务器时间同步简单即用版
- 《持续集成实践指南》第1章 DevOps实践简介