This has to do with the cookie domain. It is set for each domain, which prevents network-wide logins. You can try setting COOKIE_DOMAIN
constant in your wp-config.php
.
For example setting it to empty, which prevents WordPress from changing the cookie domain for each site:
define( 'COOKIE_DOMAIN', '' );
Maybe you need to set some other constants too, to make it work.
define( 'ADMIN_COOKIE_PATH', "https://wordpress.stackexchange.com/" );
define( 'COOKIEPATH', '' );
define( 'SITECOOKIEPATH', '' );
Don’t ask me about drawbacks, because I’m not entirely sure about that.
Or you can set one specific cookie domain for all sites:
define( 'COOKIE_DOMAIN', 'example.com' );
define( 'ADMIN_COOKIE_PATH', "https://wordpress.stackexchange.com/" );
define( 'COOKIEPATH', "https://wordpress.stackexchange.com/" );
define( 'SITECOOKIEPATH', "https://wordpress.stackexchange.com/" );
It probably is a good idea to set a unique cookie hash too:
define( 'COOKIEHASH', 'unique_cookie_hash_string' );
In case you have other WordPress installations using the same domain for cookies.
Update:
From the GitHub page of WP Multi Network I got this:
Single Sign-on
Stash something similar to this in your
wp-config.php
to share cookies
across all sites & networks.
// Cookies
define( 'COOKIEHASH', md5( 'yourdomain.com' ) );
define( 'COOKIE_DOMAIN', 'yourdomain.com' );
define( 'ADMIN_COOKIE_PATH', "https://wordpress.stackexchange.com/" );
define( 'COOKIEPATH', "https://wordpress.stackexchange.com/" );
define( 'SITECOOKIEPATH', "https://wordpress.stackexchange.com/" );
define( 'TEST_COOKIE', 'thing_test_cookie' );
define( 'AUTH_COOKIE', 'thing_' . COOKIEHASH );
define( 'USER_COOKIE', 'thing_user_' . COOKIEHASH );
define( 'PASS_COOKIE', 'thing_pass_' . COOKIEHASH );
define( 'SECURE_AUTH_COOKIE', 'thing_sec_' . COOKIEHASH );
define( 'LOGGED_IN_COOKIE', 'thing_logged_in' . COOKIEHASH );
From the looks of it, it is generic WordPress stuff, not plug-in specific, so it might be worth a try. Could be, we haven’t done enough so far.