在我们最新的 wordpress 站点中,用户名 a-bcomm 登录,查看 dashbaord 和 usermeta,is_user_logged_in() 返回 true。
将 sql 中的用户名更改为 bcomm,在完全相同的情况下 is_user_logged_in() 返回 false。
在 sql 中将其改回 a-bcomm 并再次 is_user_logged_in() 为真。
有什么想法吗?
谢谢
(编辑添加sql和代码)
内部更改用户名的sql是...
update wp_users set user_login= 'a bcomm' where id=XX;
如果进行此更改,wordpress 可以正常工作(AFAIK - 我们过去必须为用户多次这样做)。注意这也发生在新用户身上,这不是“无法更改 WP 用户名”的问题。
当用户名是 a-bcomm 但不是 bcomm 时有效的代码是
if(is_user_logged_in())
{
$user_name = $current_user -> user_login;
$user_id = $current_user -> ID;
error_log("USer logged in $user_name");
} else {
if ($user) {
$user_id = $user->ID;
$user_name = $user->user_login;
error_log("User NOT logged in $user_name");
}
error_log("User not logged in no user ".print_r($current_user,true));
}
使用 bcomm 打印最终的 error_log 条目,使用 a-bcomm 第一个打印
谢谢