How to Install and Setup WordPress Multisite Network
Are you wondering how to set up and install a WordPress multisite network? WordPress has a built-in capability to create multiple websites using a single WordPress installation.
A WordPress multisite network is often used by blogs, schools, and businesses that need to run separate websites but want to manage them under one dashboard.
In this article, we will show you how to install and set up a WordPress multisite network properly.
Since this is a comprehensive article, we have added this table of contents for easier navigation. You can use the quick links below to jump to the section you want to learn about:
WordPress Multisite Basics
WordPress Multisite Installation and Setup
WordPress Multisite Configuration Settings
Setting Up Default Content, Theme, and Plugins
Troubleshooting and FAQs
What Is WordPress Multisite Network?
A WordPress multisite network allows you to run and manage multiple WordPress blogs or websites from a single WordPress installation.
It enables you to create new sites instantly and manage them using the same username and password. You can even allow other users to sign up and create their blogs or websites on your domain.
The WordPress multisite network comes with advanced settings that you can use to customize each website/blog on your network.
Pros of Using a WordPress Multisite Network
In many situations, a WordPress multisite network can be more useful than managing multiple standalone WordPress sites. Here are some of the advantages of using a WordPress multisite network:
Cons of Using a WordPress Multisite Network
Creating a WordPress multisite network is not always helpful for managing multiple sites.
Here are some of the disadvantages that you should keep in mind before setting up a multisite network.
Who Needs a WordPress Multisite Network?
Just because you manage multiple WordPress websites does not mean you need to start using a multisite network.
There are third-party tools to manage multiple WordPress sites from a single dashboard. Tools like InfiniteWP or SolidWP (formerly iThemes) make it easier to maintain multiple WordPress sites under one roof without switching back and forth from one site to another.
Here are some scenarios when creating a multisite network makes sense:
Requirements for a WordPress Multisite Network
All websites on a WordPress multisite network share the same server resources. This means that the most important thing you will need is good WordPress hosting.
If you are planning on having just a couple of websites with low traffic, then you can probably get away with shared hosting.
However, due to the nature of a multisite network, you will typically need VPS hosting or a dedicated server as your sites grow.
We recommend Bluehost because they offer shared hosting and VPS/Dedicated servers. They are also one of the official WordPress hosting partners.
If you’re looking for an alternative, then SiteGround and WP Engine also provide excellent service for WordPress multisite networks.
Apart from web hosting, you will need the basic knowledge of installing WordPress and editing files using FTP.
Choosing a Domain Structure for your Multisite Network
On a WordPress multisite network, you can add new sites using either subdomains or sub-directories.
Example of subdomain:http://site1.example.com
Example of sub-directory:http://example.com/site1/
If you choose subdomains, then you’ll have to configure wildcard subdomains on your server. We will show you how to do that in the next step.
On the other hand, if you choose sub-directories or path-based URLs for sites on your network, you can skip the next step.
Setting Up Wildcard Subdomains
Wildcard subdomains create a placeholder subdomain under your domain name. This placeholder subdomain can then be used to map subdomains that you haven’t already defined.
This setting enables WordPress multisite to create new sites using their own subdomains.
If you decide to use subdomains for websites on your multisite network, then you will need to set up wildcard subdomains.
We will show you how to do that on Bluehost. However, the basic process is the same for all hosting providers.
First, you need to log in to your WordPress hosting account’s dashboard. Locate your site under Websites and click on the ‘Settings’ button.
This will open your site’s Settings page, where you need to switch to the ‘Advanced’ tab.
From there, scroll down to the cPanel section and click the ‘Manage’ button.
This will launch the cPanel dashboard.
Now, scroll down to the Domains section and click ‘Domains’.
It will then show you a list of domains and subdomains on your hosting account.
You need to click the ‘Create A New Domain’ button to continue.
On the next screen, you need to add a wildcard subdomain under the Domain field.
A wildcard subdomain contains an asterisk sign followed by a dot and your domain name. Like this:
*.example.com
Don’t forget to replace example.com with your own domain name.
The document root field will be automatically filled to match the wildcard.
Just click the ‘Submit’ button to save your domain settings.
Your hosting account is now ready to support WordPress multisite with subdomains.
Setting Up Custom Domains for Each Site
WordPress multisite also allows you to set different domains for each website in your multisite network.
To set up custom domains, you will need to use the domain mapping feature and update nameserver records in your domain registrar account.
We have created a detailed step-by-step guide on how to create WordPress multisite with different domains with the setup instructions.
Enabling the WordPress Multisite Network Feature
The multisite network feature comes built-in with each WordPress installation. All you need to do is install and set up WordPress like you normally would.
After that, you just need to enable the multisite feature. You can also enable the multisite feature on any existing WordPress site.
Before you enable multisite, don’t forget to create a complete backup of your WordPress site.
Then, connect to your site using an FTP client or cPanel file manager, and open the wp-config.php file for editing.
You need to add the following code to your wp-config.php file just before the /* That’s all, stop editing! Happy publishing. */ line:
define( ‘WP_ALLOW_MULTISITE’, true );
Once that’s done, you can save and upload your wp-config.php file to the server.
This code simply enables the multisite feature on your WordPress site. Once enabled, you will still need to set up the multisite network.
Setting Up Your WordPress Multisite Network
Now that you have successfully enabled the multisite network feature on your WordPress site, it is time to set up the network.
If you are setting up a multisite network on an existing WordPress website, then you will need to deactivate all plugins on your site.
Simply visit the Plugins » Installed Plugins page and select all plugins. You need to select ‘Deactivate’ from the ‘Bulk Actions’ dropdown menu and then click on the ‘Apply’ button.
You can now head over to the Tools » Network Setup page.
Here, you can configure your multisite network.
On the network setup screen, you will notice that you need Apache’s mod_rewrite module installed on your server. This module is installed and enabled on all the best WordPress hosting providers.
Next, you need to tell WordPress what domain structure you will be using for sites in your network, e.g., Subdomains or Sub-directories.
After that, you will need to provide a title for your network and ensure the email address in the ‘Network Admin Email’ field is correct.
Click on the ‘Install’ button to continue.
WordPress will now show you some code to add to your wp-config.php and .htaccess files, respectively.
You can use an FTP client or the File Manager in the cPanel to copy and paste the code.
First, edit the wp-config.php file and paste the code just below the line you added in the earlier step.
Secondly, you need to edit the .htaccess file and replace the existing WordPress rules in your .htaccess with the WordPress multisite code you copied.
Don’t forget to save your changes and reupload the edited files back to your server.
Once finished, you will need to re-login to your WordPress site to access the multisite network.
Configuring Network Settings
Now that you have set up the multisite network, it is time to configure its network settings.
Start by logging in to your WordPress website admin area.
After that, you need to switch to the ‘Network Dashboard’ settings to change network settings, add new sites, and configure other settings.
When you take your mouse over to the ‘My Sites’ menu in the admin toolbar, a flydown popup will appear. Click on Network Admin » Dashboard.
This will take you to the multisite network dashboard. You will notice that there are new menu items to manage your multisite network.
You will also see a ‘Right Now’ dashboard widget that allows you to create a new site and add new users.
To configure network settings, you just need to click on the ‘Settings’ link in the admin sidebar.
The first option on the network settings page is to set your site title and admin email address. These fields will be filled automatically with the network title and admin email you entered during setup.
Opening Your Multisite Network for Registrations
The ‘Registration Settings’ section on the network settings page is probably the most important setting in your entire network setup.
By default, both user and site registrations are disabled on the network.
You can choose to open your site for user registration, only allow existing users to create new sites, or allow both user and site registration.
If you are opening your multisite network to registration, then you can check the box next to the ‘Registration Notification’ option.
This will allow you to receive email notifications every time a new user or site is registered.
If you want to allow individual site administrators to add new users to their sites, then you can check the box next to the ‘Add New Users’ option.
The limited Email Registration option allows you to limit site or user registration to email addresses from specific domains.
This is particularly useful if you only want to allow people from your own organization to register and create users or sites.
Similarly, you can also ban certain domains from registration.
New Site Settings
The ‘New Site Settings’ section allows you to configure default options for new sites created on your multisite network.
You can modify the welcome emails and the contents of the first default post, page, and comment in these settings.
As a network administrator, you can change these settings anytime.
Upload Settings for Your Multisite Network
It is important to keep an eye on the usage of your server resources. Under the ‘Upload Settings’ section, you can limit the total amount of space a site can use for uploads.
The default value is 100 MB, which is probably good for at least 100 photo uploads. You can increase or decrease this space depending on how much disk space you have.
The default upload file types are images, audio, video, and pdf files. You can add additional file types if you want, like doc, docx, odt, and so on.
Afterward, you can choose a file size limit so that users can’t upload insanely large files to the server.
Next, you can jump to the Menu Settings. It will allow you to enable the administrative menu for the plugins section on your network sites.
Enabling this will show the Plugins menu to respective site admins. They can activate or deactivate a plugin on their sites, but they cannot install new plugins.
Once you are satisfied with all the configuration settings, go ahead and click the ‘Save Changes’ button.
Adding New Sites to Your WordPress Multisite Network
To add a new site to your WordPress multisite network, simply click on ‘Sites’ under the My Sites » Network Admin menu in the admin toolbar.
This will show you a list of sites on your current multisite installation. By default, you have your primary site listed as the only site in your WordPress multisite network.
To add a new site, click the ‘Add New’ button at the top.
On the ‘Add New Site’ page, provide the site’s address. You don’t need to type the full address, just the part you want to use as the subdomain or sub-directory.
Next, you add a site title and enter the site admin’s email address.
You can add an admin email address other than the one that you are currently using to manage your multisite network.
If another user does not currently use that email address, then WordPress will create a new user and send the username and password to the email address you enter.
Once you are done, simply click on the ‘Add Site’ button.
A new site will be added to your WordPress multisite network. As the network admin, you will also receive a new site registration email.
If you create a new user, that user will receive an email with instructions to set the password and log in.
Adding Themes and Plugins to Your Multisite Network
By default, individual site administrators in a multisite network cannot install themes and plugins on their own.
As the network admin, you can install the respective plugins and themes so they are available for all sites on your network.
Installing Themes for Your Multisite Network
To add themes, go to the My Sites » Network Admin » Themes page.
On this page, you will see a list of themes that are currently installed on your WordPress multisite.
You can make a theme available to other sites by clicking on the ‘Network Enable’ option under that theme.
You can also disable a theme by clicking on the ‘Network Disable’ link under the theme. Note: The Network Disable option will only appear when the theme is enabled.
To add a new theme, you need to click on the ‘Add New’ button at the top of your screen and then install a WordPress theme as you would normally do.
Once the new theme is installed, you will be able to make it available to other sites on your network with the ‘Network Enable’ option.
If you need recommendations on which themes to make available to your network, here are our picks of the best WordPress themes that you can use:
Setting a Default Theme for Your Multisite Network
Even if you have added a couple of themes, WordPress will still activate the default WordPress theme for each new site.
If you want to make another theme the default for new sites, then you need to add the following code to your wp-config.php file:
define( ‘WP_DEFAULT_THEME’, ‘your-theme’ );
Replace your-theme with the name of your theme. You will need to use the name of the theme’s folder, which you can find by looking at the /wp-content/themes/ folder using FTP or File Manager.
Installing Plugins for Your Multisite Network
Similarly, you can visit the My Sites » Network Admin » Plugins page to install plugins and click on the ‘Network Activate’ link below each plugin to activate it on your multisite network.
Here are a few essential WordPress plugins that we recommend for every website:
For more plugin recommendations, see our list of the essential WordPress plugins for all websites.
Note: If you previously enabled the Plugins Menu option for site admins in the ‘Network Settings’, then the site administrators can activate or deactivate installed plugins on their own. Site admins cannot delete or install a new plugin on their own.
Adding Default Content to Multisite Sites
By default, WordPress allows you to add and edit some default content for each site on your multisite network. You can go to Settings » Network Settings page and add this content in the ‘New site settings’ section.
You can edit the content for the default post, page, and comment. We recommend replacing the default content with something more useful for your site admins.
But what if you wanted additional default content to be added to each new site?
By default, WordPress does not give you an option to create additional default content for new sites. If you want to do that, then you will need to add custom code to your WordPress multisite.
In this example, we are going to add a new default page to be created for each new site. You can add this code to your main site’s functions.php file or by using the WPCode plugin on your main site:
function wpb_create_my_pages($blog_id, $user_id){
switch_to_blog($blog_id);
// create a new page
$page_id = wp_insert_post(array(
‘post_title’ => ‘About’,
‘post_name’ => ‘about’,
‘post_content’ => ‘This is an about page. You can use it to introduce yourself to your readers or you can simply delete it.’,
‘post_status’ => ‘publish’,
‘post_author’ => $user_id, // or “1” (super-admin?)
‘post_type’ => ‘page’,
‘menu_order’ => 1,
‘comment_status’ => ‘closed’,
‘ping_status’ => ‘closed’,
));
restore_current_blog();
}
You can use the same code with little modifications to create default posts for new sites. Check out the following code:
function wpb_create_my_pages($blog_id, $user_id){
switch_to_blog($blog_id);
// create a new page
$page_id = wp_insert_post(array(
‘post_title’ => ‘A sample blog post’,
‘post_name’ => ‘sample-blog-post’,
‘post_content’ => ‘This is just another sample blog post. Feel free to delete it.’,
‘post_status’ => ‘publish’,
‘post_author’ => $user_id, // or “1” (super-admin?)
‘post_type’ => ‘post’,
));
restore_current_blog();
}
Troubleshooting WordPress Multisite Issues
Most common issues with WordPress multisite network setup happen due to the incorrect configuration of wildcard subdomains and domain mapping issues. Make sure that your web host supports wildcard subdomains before setting up multisite.
The following are some other common issues and their quick fixes.
Fixing Login Issues on Multisite Installs
A common issue is that when using WordPress multisite with sub-directories, some users are unable to log in to the admin area of their sites after they add the required code in the wp-config.php file.
To fix this, locate the following line in the wp-config.php file:
Now, simply replace it with the following line:
Find Unconfirmed Users
Another issue you may encounter is not being able to find users who registered on your network but didn’t get the activation email.
To fix this issue, see our guide on how to find pending unconfirmed users in WordPress.
Exporting a Site From Multisite to Its Own WordPress Install
Later, you or another site owner may want to export a site from multisite to a separate WordPress install. This can be easily done. For step-by-step instructions see our guide on how to move a site from WordPress multisite to single install.
You may also want to bookmark our ultimate guide to common WordPress errors and how to fix them. This will save you a lot of time fixing the most common WordPress issues quickly.
FAQs About WordPress Multisite Network
Many of our users have asked us plenty of questions about WordPress multisite network and how to use it more efficiently. The following are the most frequently asked questions that we have answered.
1. Would I be able to better manage my sites with a multisite network?
To be honest, the answer really depends on your usage scenario.
For example, if your websites are not related to each other, then you would be better off with a multiple site management tool like InifiteWP.
However, if you manage multiple sites for a restaurant chain, university, or online magazine, then WordPress multisite will be more efficient.
2. Does WordPress multisite make my websites load faster?
Once again, it depends on several factors. Better WordPress hosting with plenty of server resources will allow multisite to be faster, but then again, with these resources, individual WordPress sites will also run faster.
However, on a shared hosting account, traffic spikes will increase memory usage and slow down all websites on the multisite network at the same time. To improve multisite speed, see our guide on WordPress performance and speed optimization.
3. Can I add an online store to a WordPress Multisite Website?
Yes, you can add an online store in the WordPress multisite network. Most likely, you will be using an eCommerce plugin like WooCommerce for that, which is compatible with WordPress multisite.
4. Can I install ‘x plugin’ on my WordPress multisite?
Some WordPress plugins may not be compatible with WordPress multisite. Normally, plugin authors mention it on the plugin’s website, and you can avoid installing a plugin that may not work on a multisite setup. However, if it is not mentioned, then it is safe to assume that it is multisite compatible.
5. How do I share user logins and roles across the multisite network?
By default, a user who is registered on one site cannot register or be added to another site on the same network. That’s because they are already registered in the shared WordPress database. However, they don’t have any user role privileges on other sites.
You can use third-party plugins like WP Multisite User Sync to sync users across the network. However, you need to be careful, as you may end up giving someone admin privileges to a site.
We hope this article helped you learn how to install and set up WordPress multisite network. You may also want to see our step-by-step WordPress security guide to protect and keep your WordPress multisite secure or our expert picks of the best WordPress multisite plugins you should use.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.