当你说用户“登录时使用的凭据错误”时,我不得不假设你的意思是“用户登录时使用的凭据正确,但没有访问页面所需的权限”。如果用户能够使用错误的凭据登录,您的站点将严重受损。
重定向本身不会导致您描述的错误。通过将以下内容粘贴到主题的header.php:
wp_redirect(wp_login_url( get_permalink() ));
exit;
任何试图访问前端页面的尝试都将重定向,但没有无限的重定向循环。问题一定是你把代码放在哪里了,而你没有包括这些信息。我希望您在某个地方有它——可能有一个钩子——可以加载登录页面,这样当重定向开始时,它就不会停止(直到浏览器放弃)。解决这个问题可能会解决眼前的问题。
我想知道为什么要使用用户元字段而不是capability, 虽然我不明白为什么内置权限系统不能处理这个问题。