Php 移动Wordpress后,登录工作正常,但不再具有管理员访问权限

Php 移动Wordpress后,登录工作正常,但不再具有管理员访问权限,php,wordpress,wordpress-login,Php,Wordpress,Wordpress Login,将wordpress从旧ISP转移到新ISP后,我在管理访问/访问仪表板方面遇到问题 通过将所有文件(包括htaccess)从旧服务器复制到新服务器,转储旧数据库并将其放在新服务器上,并在wp-config.php中调整数据库的所有设置来完成传输 通过在我的机器上设置一个hosts条目,我可以验证一切正常,并且所有内容都显示出来 这是我的问题 在使用新旧凭据(例如手动添加的管理员帐户)通过wp-login.php登录后,登录正在进行,将我重定向到网站,通过页面顶部的登录栏声明成功登录,但声明禁止

将wordpress从旧ISP转移到新ISP后,我在管理访问/访问仪表板方面遇到问题

通过将所有文件(包括htaccess)从旧服务器复制到新服务器,转储旧数据库并将其放在新服务器上,并在wp-config.php中调整数据库的所有设置来完成传输

通过在我的机器上设置一个hosts条目,我可以验证一切正常,并且所有内容都显示出来

这是我的问题

在使用新旧凭据(例如手动添加的管理员帐户)通过wp-login.php登录后,登录正在进行,将我重定向到网站,通过页面顶部的登录栏声明成功登录,但声明禁止访问仪表板

Sorry, you are not allowed to access this page.
登录栏除了转到wordpress.com或注销外几乎没有其他选项


这可能只是一件小事,我只需要有人给我指出正确的方向

听起来您的问题在于手动创建的管理员帐户。您看到的错误消息向我表明,分配给用户的权限存在问题

您能告诉我更多有关手动添加帐户的步骤吗

我猜您是直接将用户添加到users表中的,但是在这样做之后,您是否向usermeta表中添加了功能和用户级信息

举个例子,如果我正在创建一个用户,我会运行一个查询,将该用户插入
wp\u users
表(当然假设我们使用的是标准表前缀)

然后,我将获得新创建的用户的ID,并使用它在
wp\u usermeta
中插入两个新行

umeta\u id
应为空,
user\u id
应为两个条目的新用户id

1)
meta_key: wp_capabilities
meta_value: a:1:{s:13:"administrator";s:1:"1";}

2)
meta_key: wp_user_level
meta_value: 10

进一步阅读:

发现这是Wordpress 4.6.1中的一个错误,当使用您自己的前缀作为DB表名时


重命名为wp_u; prefix并更改表名,它就可以工作了

这可能是因为您手动更改了表名,然后显示此错误。 因此,也可以将表前缀更改为“meta_key”列中的“usermeta”表

前一个前缀您将更改为新

  • 你的能力
  • 您的前缀\u用户\u级别
  • yourprefix\u用户设置
  • yourprefix\u用户设置时间

你的问题已经解决了。

为我找到了完美的解决方案

问题不在于将数据库迁移到新服务器,而是,如果迁移前缀在旧数据库和新数据库中不同,则会出现问题

我最初的数据库前缀类似于wp\u 71XXXXXX28\uz,在新安装中,我使用的是wp\uz。更改前缀只能解决数据部分,但登录问题仍然存在

因此,我只需使用phpmyadmin搜索选项搜索所有表中的旧前缀,搜索wp71xxxxxx28,并将记录更改为wp


注意:我在wp\u用户中找到了5-6个匹配项,在wp\u选项中找到了1个匹配项,您的可能不同

当您在原始wordpress站点的转储.sql文件上使用search&replace以在新站点上使用它时,请确保涵盖了所有内容。
我在检查wp_usermeta表时遇到了同样的问题,在meta_key列中,我发现了一些以旧表前缀命名的键。替换它们修复了我的问题。

我在迁移后也遇到了此消息

看起来数据库前缀是区分大小写的,如果它不完全匹配,这就是试图访问管理页面时弹出的内容

确保检查config.php并将其完全设置为表前缀

如果使用phpMyAdmin检查表,应该注意数据库树中的所有表名都以小写显示,而在我的例子中,预期的前缀都是大写


phpMyAdmin映像:

图像中正确的前缀是应该使用的前缀


我使用“\u usermeta”表来获得预期的前缀WP。

对于仍在寻找正确答案的任何人,在我的情况下,这就是我所做的,以解决无法登录WordPress Dashboard的问题


在“wp_用户_角色”选项名称下的数据库“wp_选项”表中,缺少所有标准功能。从数据库备份或干净的WordPress数据库复制这些功能

我想我都设置正确了。这就是我添加的:
code
插入
wp\u用户
ID
user\u登录
user\u通行证
用户名
用户电子邮件
用户状态
显示用户名
)值('1000','david MD5('willoverwritewithcorrect'),'david','david@gmail.com“,”0“,”大卫“); 插入
wp_usermeta
umeta_id
user_id
meta_key
meta_value
)值(NULL,'1000',wp_能力,'a:1:{s:13:'administrator;b:1;});插入
wp\u usermeta
umeta\u id
user\u id
meta\u key
meta\u value
)值(空值,'1000',wp\u用户级别,'10');我遵循了所有其他说明,但用这段代码创建一个新的管理员成功了。谢谢我也有类似的问题,当我将站点从本地主机移动到服务器时,由于某种原因,表名在重命名后被改为小写。我在*\u选项和*\u usermeta中找到了旧前缀,而不是*\u user。Lifesaver。。。我永远猜不到这就是原因。我的错误是在迁移之后,在更改前缀LOLuu01之前没有检查站点。LOLuu01的建议对我有效。。。我检查了数据库,前缀的大小写不一。。。当我在wp_config文件中将其更改为与DB相同的混合情况时,我进入了