恢复超级管理员权限

时间:2013-03-21 03:39:10

标签: wordpress-plugin wordpress-theming wordpress

我在WordPress(最新版本)中意外地使自己成为管理员

有没有办法取回我的超级管理员权限?

我有一个角色管理员,除了创建页面和帖子等之外,还会将管理员锁定在后端的大多数区域之外。

这意味着我无权访问插件,主题或设置,因为我是管理员。

我尝试将以下代码添加到主题目录中的functions.php文件中,但这不起作用;我还是管理员! :(

include(ABSPATH . 'wp-admin/includes/ms.php');
$user = get_userdatabylogin('myusername');
grant_super_admin(1);

这是一个简单解决方案的常见问题吗?我整天都在搜索谷歌而没有运气!

6 个答案:

答案 0 :(得分:7)

您可以使用以下网址检查当前的超级管理员用户

$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;

答案 1 :(得分:1)

EX:

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;}

答案 2 :(得分:1)

我这样做是为了恢复备份,这个备份取代了我当前的超级管理员用户,只是一个管理员的老用户,所以我被锁定了超级管理员用户权限。

修复是非常简单和容易的。 Wordpress将超级管理员用户数据和管理员用户数据保存在数据库中的两个不同位置,因此要解决此问题,只需进入数据库并找到wp_sitemeta表并查找站点管理员字段。它将具有如下值:

a:1:{i:0;s:9:"webmaster";}

9只是一个整数,表示您的用户名,在本例中为网站管理员,有9个字符。在备份还原之前,我的超级管理员用户名是网站管理员,但是当我完成备份后,我擦除了网站管理员用户帐户,但将超级用户数据保留为网站管理员在表格中。

所以要解决这个问题,只需将此表中的名称更改为新用户名,然后添加新的整数即可。因此,如果您的新用户名是 newwebmaster ,那么它应该如下所示:

a:1{i:0;s:12:"newwebmaster";}

这应该恢复您的超级管理员权限

答案 3 :(得分:0)

尝试使用此查询

<?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更改密码,您可以将查询放在头文件中。

答案 4 :(得分:0)

如果您的用户仍然存在于phpmyadmin或任何数据库处理程序中,并且您可以访问wordpress数据库,请尝试以下操作: 将user_meta表中的wp_capabilities更改为: &#34;:1:{S:13:&#34;管理员&#34 ;; B:1;}&#34;没有引号。

答案 5 :(得分:0)

我遇到了类似的问题,由于将帐户更改为客户,我失去了管理员权限。我尝试了以上所有方法,发现 rankmath 添加了一些如下所示的行:

a:5{s:15:"wpseo_bulk_edit";b:1;s:28:"wpseo_edit_advanced_metadata";b:1;s:22:"wpseo_manage_redirects";b:1;s:23:"view_site_health_checks" ;b:1;a:1:{s:8:"customer";b:1;}

到 wp_capabilities 并且当我更改 a:1:{s:13:"administrator";b:1;} 时不起作用,在我将此行移到开头后,它确实对我有用:

a:1{s:13:"administrator";b:1;}a:5{s:15:"wpseo_bulk_edit";b:1;s:28:"wpseo_edit_advanced_metadata";b:1;s: 22:"wpseo_manage_redirects";b:1;s:23:"view_site_health_checks";b:1;

希望这对和我有同样问题的人有所帮助。