问题是,当您登录HTTPS站点时,WordPress会在身份验证cookie上设置“仅安全”标志,因此此cookie不会发送到您的仅HTTP站点。您可以通过重写secure_signon_cookie 过滤插件或主题并返回false:
function no_secure_signon_cookie( $secure_cookie, $credentials ) {
// Don\'t generate secure-only authentication cookies even on HTTPS
return false;
}
add_filter( \'secure_signon_cookie\', \'no_secure_signon_cookie\', 10, 2 );
(实际上,这可能需要在mu插件中:我不确定是否为wp登录加载了普通插件和主题。)
但不要这样做:修复您的子域以通过HTTPS工作,即使这意味着获得一个单独的免费证书,其中明确包含所有子域(前提是您对服务器有足够的控制权,可以自己运行certbot或类似的证书)。
(尽管如此,我不明白您如何登录到HTTP站点而不通过HTTPS登录,因为多站点使用主站点进行所有登录,而这将是HTTPS站点?)