Knowledgebase

Back to How To's

WordPress Multisite and Multiple Domains


On our managed WordPress hosting, it is possible to run multiple domains from a single WordPress installation using WordPress Multisite. This is the only supported method for hosting more than one site or domain on a single WordPress install - each domain must point to the same WordPress installation rather than having separate installs.


What is WordPress Multisite?

WordPress Multisite is a built-in feature that turns a single WordPress installation into a network of sites. Each site in the network shares the same WordPress core files, themes, and plugins, but has its own content, settings, and users.

On our platform, Multisite is used with domain mapping, which allows each site in the network to have its own fully independent domain (for example, site-one.com and site-two.com) rather than appearing as a subdomain or subdirectory of a primary domain.


Requirements and Limitations

Before setting up Multisite, be aware of the following:

  • All domains in the network must point to the same WordPress install on the same hosting package.
  • Each additional domain must be added to the hosting account in StackCP and pointed at the same document root as the primary WordPress installation.
  • Plugins and themes are managed network-wide by a Super Admin - individual site admins cannot install their own.
  • Some plugins are not compatible with Multisite. Check compatibility before enabling.
  • You cannot easily convert a Multisite network back to individual single-site installs without manual migration work.

Step 1 - Prepare the WordPress Installation

Before enabling Multisite:

  1. Back up the site files and database.
  2. Confirm that Pretty Permalinks are working (Settings > Permalinks - set to anything other than Plain and save).
  3. Deactivate all plugins via Plugins > Installed Plugins. They can be re-enabled network-wide after setup.

Step 2 - Enable Multisite in wp-config.php

Connect to the server via SSH and navigate to the WordPress root directory, then open wp-config.php:

vim wp-config.php

Add the following line above the /* That's all, stop editing! */ comment:

define( 'WP_ALLOW_MULTISITE', true );

Save and exit (:wq! in vim).


Step 3 - Run the Network Setup Wizard

  1. Log in to the WordPress admin panel (/wp-admin).

  2. Go to Tools > Network Setup.

  3. You will be prompted to choose a network structure:

    OptionUse case
    Sub-domainsEach site uses site.primarydomain.com
    Sub-directoriesEach site uses primarydomain.com/site

    Note: If you intend to use domain mapping (separate independent domains per site), choose Sub-domains. The mapped domain replaces the subdomain address for visitors.

  4. Enter a Network Title and confirm the Network Admin Email, then click Install.


Step 4 - Apply the Generated Configuration

WordPress will display two blocks of code that must be added to your installation.

In wp-config.php, add the provided lines above the /* That's all, stop editing! */ comment. They will look similar to:

define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', true );
define( 'DOMAIN_CURRENT_SITE', 'primarydomain.com' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );

In .htaccess, replace the existing WordPress rewrite block with the provided multisite version.

Once both files are saved, log out and log back in. You will now see a My Sites / Network Admin menu in the top bar.


Step 5 - Add a Domain to the Hosting Account

Before a new domain can be mapped to a site in the network, it must first be added to the hosting package in StackCP.

  1. In StackCP, go to Domains.
  2. Enter the domain you want to add and click Add Domain. It will automatically be mapped to public_html, the same document root as the primary WordPress installation.
  3. Ensure the domain's DNS A record points to the same IP address as the primary domain.

Step 6 - Create a Site in the Network

  1. In WordPress, go to Network Admin > Sites > Add New.
  2. Enter the site address (this will initially be a subdomain of the primary domain), title, and admin email.
  3. Click Add Site.

Step 7 - Map a Custom Domain to the Site

WordPress 4.5 and later includes built-in domain mapping.

  1. In Network Admin > Sites, find the site you just created and click Edit.
  2. Go to the Settings tab.
  3. In the Site URL field, replace the subdomain address with the custom domain (for example, https://site-two.com).
  4. In the Home field, replace the subdomain address with the same custom domain.
  5. Save the changes.

Visitors to site-two.com will now be served that site's content from the network.


Styling Sites Independently

Each site in the network can have its own appearance. The following are managed per-site, independently of other sites in the network:

  • Active theme
  • Customizer settings (colours, fonts, header images, etc.)
  • Page content and layouts
  • Media uploads (each site has a separate uploads directory)

Themes are installed once at the network level by the Super Admin and then made available for individual sites to activate. Each site can activate a different theme, meaning site-one.com and site-two.com can look entirely different to visitors.

Page builder plugins such as Elementor are similarly network-activated but configured independently per site.

The only constraint is that site admins cannot install their own themes or plugins - they can only choose from those the Super Admin has made available to the network.


Step 8 - Re-enable Plugins

Network-wide plugins are enabled by the Super Admin:

  1. Go to Network Admin > Plugins.
  2. Click Network Activate for each plugin that should be available across all sites.

Individual site admins can then manage plugins from their own site dashboard, but only from those already network-activated.


Troubleshooting

The second domain shows the wrong site or the primary site

  • Confirm the domain is pointed to the correct document root in StackCP.
  • Confirm the Site URL and Home fields were updated correctly in Network Admin > Sites > Edit > Settings.
  • Clear any server-side or CDN caching.

wp-admin redirects back to the primary domain after login

  • Check that the DOMAIN_CURRENT_SITE constant in wp-config.php matches the primary domain exactly, including whether www is present.

A plugin does not work correctly on Multisite

  • Not all plugins support Multisite. Check the plugin documentation or support forums for known compatibility issues.

Further Reading


Related Articles

How to Install Wordpress
How do I add and use WordPress contact forms?
How do I reset my WordPress user password?
How to Access and Edit a WordPress Site
Permalinks

Can’t Find what you need?

No worries, Our experts are here to help.