This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

SSL Subdomain for Multisite


Ensures logins are always done via SSL on a subdomain of the master domain, but that access to custom domains are always done over HTTP, to avoid certificate errors. For WordPress Multisite.

WordPress’ built-in FORCE_SSL_LOGIN and FORCE_SSL_ADMIN directives in wp-config.php work great, but are too restrictive in situations where you have custom domains — custom domains for which you cannot have SSL certificates. For sites on custom domains, we need to make sure that the login and admin access happens over the subdomain, which can be properly served over HTTPS.

What this Plugin does (incorporating Foolish Assumptions)

or, a readme you should read before implementing this plugin on your site.

This plugin filters the login, logout, home and admin URLs that WordPress uses to generate its internal links.

Why do we do this?

The Scenario

We have a WordPress Multisite network. Let’s call it We bought a fancy SSL wildcard certificate so we can offer * over a secure connection.

We’d very much like to use this secure connection for all logins, and for all admin access.

We also allow sites on this network to use a custom domain — like We might be using WPMU Domain Mapping to achieve this. These sites have two domains, then — and

If we switch on FORCE_SSL_LOGIN or FORCE_SSL_ADMIN, we have a problem. When users go to, they get a certificate error. We have a wildcard certificate for *, but we can’t possibly have a valid SSL certificate installed for every custom domain!

Instead, we want to force all login pages and admin pages to be:… 

We want all regular access to be:… 

This plugin facilitates that — rewriting the wp-login (including logout) and wp-admin URLs to the first example, and rewriting all the others to the second style.

Foolish Assumptions

This plugin makes some (foolish) assumptions about your multisite network. You must make sure that these assumptions are true for your site, or you will find that this plugin may have unintended consequences and break things that are difficult to fix without manually disabling the plugin.

  1. Your subdomains are in the format: a.b

    where a is, for example: demo-site. b is, for example: a must be a single domain component. (a can’t be, for example:

  2. Your wildcard certificate is configured properly for:

    • *
    • your network site URL

    So if your network site URL is, your wildcard cert will be fine. If it is just, you will need another cert to avoid errors when you go to

  3. Your site already has the custom domains working.

    • I suggest the excellent WPMU Domain Mapping for this.

      • Your web server also needs to be set up to handle hosting a wildcard name virtual host. All of this is really part of the WPMU Domain Mapping set up, and not the set up for this plugin. I’m just, you know, mentioning it.
  4. You have the FORCE_SSL_LOGIN setting in wp-config.php true.

  5. You have the FORCE_SSL_ADMIN setting in wp-config.php false. We’ll handle that — WordPress’ forcing of SSL admins will conflict with this plugin.


  1. Set up custom domains, perhaps using WPMU Domain Mapping.
  2. Configure your web server with your wildcard certificate for your master domain (for example *
  3. Set FORCE_SSL_LOGIN to true in wp-config.php.
  4. Upload ssl-subdomain-for-multisite.php to your mu-plugins folder.


There are no reviews for this plugin.

Contributors & Developers

“SSL Subdomain for Multisite” is open source software. The following people have contributed to this plugin.




  • Fix a bug where the ‘Dashboard’ link on the Network Sites page would point to an incorrect domain in some installations of WordPress Multisite. Thanks to Rob Mint.


  • Initial release.