I’d determine which plugin is causing the issue (try them one at a time) and then contact the plugin author and request a fix.
Or you could restore a backup of your site to before you made the update.
If you have an editor that will do searches across multiple folders (textwrangler on the mac does this) you could search for ‘force_ssl_login’ to figure out which plugin has the issue and you could try changing the code yourself.
One question: if thissite is critical, why didn’t you test the new version of wordpress on a test site before upgrading?
Go through your plugin and/or theme files and find which one is calling force_ssl_login. Change that to force_ssl_admin instead. Works exactly the same as the old way, without the error message.
Also, disable the display_errors setting on your site. You will need to ask your hosting service for the proper way to do this.
Thread Starter
Anonymous User 9312037
(@anonymized-9312037)
I think the plugin Paid Memberships Pro is to blame mostly.
There are several occurrences of “force_ssl_login” in the https.php, checkout.php and login.php in that plugin. But can I safely change all the occurrences to “force_ssl_admin”, without any issues? Really?
Like
//if forcing ssl on login, be secure on the login page
if(!$besecure && force_ssl_login() && pmpro_is_login_page())
$besecure = true;
//this function sets the besecure global which may be used in early code
/*
function pmpro_besecure_set()
{
global $besecure;
if(force_ssl_admin() || force_ssl_login() || is_ssl())
$besecure = true;
$besecure = apply_filters("pmpro_besecure", $besecure);
}
//let's strip the https if force_ssl_login is set, but force_ssl_admin is not
if(force_ssl_login() && !force_ssl_admin())
$redirect_to = str_replace("https:", "http:", $redirect_to);
//setting some cookies
wp_set_current_user($user_id, $username);
wp_set_auth_cookie($user_id, true, apply_filters('pmpro_checkout_signon_secure', (force_ssl_login() || force_ssl_admin())));
}
I’m not skilled in php. But if it’s just search and replace with no worries, then that’d be cool!
ps
@juggledad: I still got the site in a testing ground, haven’t launched yet. But I am about to and this problem has caused a lot of hassle. But if you have any suggestion on how to set up a proper staging area, don’t hold back 🙂
For that one, you may want to contact the plugin author to get an update.
As of 4.4, the force_ssl_login function actually calls force_ssl_admin instead. So they’re identical. So some of the above code makes no sense now and can be removed.
But basically, yes, a straight up search/replace will work, however it might not exactly be efficient or what have you.