We have all heard of SaaS, but there is a new acryonym in town….WaaS. Which stands for Website As A Service, and this guide will show you hwo to set one up.
Did you know that you can set up a multisite network so you can manage all your websites from a single account and even offer this as a service?
WordPress has a built-in capability to create and launch multiple websites using the same WordPress installation. It is the WordPress Multisite Network.
Multisite is a powerful WordPress feature that, once activated, allows you to create a network of websites running within a single WordPress installation. It’s been around since WordPress 3.0 and has been used by quite a lot of big sites such as WordPress.com, the New York Times, Harvard, and Edublogs to name a few.
Let me show you everything you need to know to get started with Multisite and create your own network of blogs or sites.
Introduction to WordPress Multisite Networks
A multisite network is a collection of websites that all share the same single WordPress installation, database, plugins, and themes. The individual sites in a network are virtual sites which don’t have their own directories on your server, but they do have distinct directories for media uploads and isolated tables in the database.
Multisite was up and running as a WordPress feature since 2010. It substituted WordPress Multiuser, a feature that enabled users to put up a grid of blogs. WordPress developed Multisite a step further, enabling users to host diverse sites on a single WordPress installation.
The great thing about Multisite is that the WordPress installation itself is almost the same as a standard installation: it has the same folder construction, the same core files and the same code base. This means that installing a Multisite network isn’t much more complex than installing a standard WordPress site, and updating Multisite is the same as updating any WordPress site.
No matter how many sites you use them on, all your network’s themes and plugins are stored just once, meaning you’ll be using a lot less server space than if you used a separate WordPress installation for each site.
When and why you should use a multisite network
In numerous 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:
- Being the network administrator, you can easily manage multiple sites from a single dashboard.
- Each site on the network can have its own admins and these admins will have the capabilities to manage only their own website.
- With only one download, you can install plugins or themes and activate them for multiple sites.
- You only need to update your WordPress, plugins, or themes on one “master” install which makes it easier for you to manage updates.
WordPress plugins such as ManageWP can help you in managing all your websites from one dashboard.
But, creating a WordPress multisite network is not always helpful in managing multiple sites. Keep the following in mind before setting up a multisite network.
- When your network is down, all other sites go down as well as they share the same resources.
- In case, one of your websites gets unexpected traffic, then it will affect all other websites on the network.
- If one website gets hacked, then this means all sites on your network will get hacked.
- Some WordPress plugins may not work well on a multisite network.
What You Need to Get Started with WordPress Multisite
If you’re running a WordPress website, you already have all you need to get started with multisite. But more specifically, you would need:
- Hosting: Make sure your web server is capable of hosting multisite. Shared hosting isn’t always a great idea as a multisite network is more resource-intensive than a standalone WordPress site. We recomend Cloudways for WordPress Multisite.
- Knowledge: You’ll need to know how to edit WordPress files.
- Access: You’ll need to edit some WordPress files, so you’ll need access to your site directory via FTP, cPanel or some other method.
Selecting a Domain Name and Web Hosting for Your Multisite Network
All websites on a WordPress multisite network share the same server resources. It means that the most important thing you will need is an upright 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 the multisite network, you’d need VPS hosting or a dedicated server as your sites grow.
Shared web hosting such as Bluehost or Hostgator are not recommended for building out a WaaS because of their poor performance and limited resources.
We recommend, Cloudways or Siteground for building your WaaS.
Aside from web hosting, you will need the basic knowledge of how to install WordPress and editing files using FTP.
Each of your sites on the multisite network will use the same domain name with subdomains (example: https://site.mysampledomain.com) or folders on the root (example: https://mysampledomain.com/site/).
Take note that the subdomains and sub-directories take their own individual requirements.
For subdomains, you need to set up wildcard subdomain. Log into the cPanel of your hosting account. In the Domains area, click on the ‘Subdomains’ option.
It will lead you to a new page. In the given field, enter * and make sure you have your domain name next to it in the dropdown.
Click on the Create button to properly set up wildcard subdomain for your main domain.
For sub-directories or folders on the root, enable pretty permalinks and your multisite network will work on them. After the setup, make a WordPress website to continue.
Enable and Set Up a WordPress Multisite Network
Multisite Network feature begins with each WordPress installation. You just need to install and setup WordPress like you typically would. After that, you just enable the multisite feature.
Before enabling multisite, make sure to create a complete backup of your WordPress site.
To enable Multisite, connect to your site using a FTP client or cPanel file manager, and open the wp-config.php file for editing.
Add the following code to your wp-config.php file just before the /* That’s it, stop right there! Happy blogging. */ line.
/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );
After that, save and upload your wp-config.php file back to the server.
This code enables the multisite feature on your WordPress site. Once enabled, you can now set up the multisite network.
Begin the Multisite Network Setup
After successfully enabling the Multisite Network feature on your WordPress site, you can now proceed on setting up your network. If you are configuring a multisite network on an existing WordPress website, you need to deactivate all plugins on your site.
Just go to Installed Plugins page under the Plugins menu of your WordPress dashboard and select All Plugins. Select ‘Deactivate’ from the ‘Bulk Actions’ dropdown menu and click on the ‘Apply’ button.
Once finished, head over to the Network Setup page under Tools to configure your multisite network.
You will see a notice on the network setup screen stating 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 kind of domain structure you will be using for sites in your network, for example, Subdomains or Sub-directories.
After that, provide a title for your network and make sure that the email address in the Network admin email is correct.
Click on the Install button to continue.
WordPress will now show you some code that you need to add to your wp-config.php and .htaccess file respectively.
You can use an FTP client or file manager in the cPanel to copy and paste the code in these two files. After that, you need to re-login to your WordPress site to access the multisite network.
Multisite Network Configuration Settings
After you have successfully set up the multisite network, it is time to configure network settings.
To change the network setting, you need to switch to the ‘Network Dashboard’, add new sites, and configure other settings.
Take your mouse over to the ‘My Sites’ menu in the admin toolbar so that a popup menu will appear. Click on the Network Admin > Dashboard.
This will lead you to the multisite network dashboard. Notice that there are new menu items to manage your multisite network. See a “Right Now” dashboard widget which allows you to create a new site and add new users.
To organize network settings, 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 undoubtedly the most important setting in your network setup.
Both user and site registrations are disabled on the network by default. You can choose to open your site for user registration, or allow existing users to create new sites, or allow both user and site registration.
Check the box next to Registration Notification option to receive email notifications every time a new user or site is registered if you are opening your multisite network to registration.
Check the box next to Add New Users option if you opt to allow individual site administrators to add new users on their sites.
Limited Email Registration option allows you to limit site or user registration to email addresses from specific domains. This is 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.
In these settings, you can modify the welcome emails and the contents of first default post, page, and comment.
You can change these settings anytime as a network administrator.
Upload Settings for Your Multisite Network
It is important for you to track the usage of your server resources. Under the Upload Settings section, you can control 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. 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, etc.
Also, you can choose a file size limit, so that users can’t upload unreasonably large files to the server.
Menu Settings
Next, jump to the Menu Settings. It allows you to enable the administrative menu for the plugins section on your network sites.
By enabling this, this will show plugins menu to respective site admins. They can activate or deactivate a plugin on their individual sites, but they cannot install new plugins.
Once you are satisfied with all the configuration settings, make sure to click on the ‘Save Changes’ button.
Add and Manage New Sites to Your WordPress Multisite Network
To add a new site to your WordPress multisite network, go to Sites under My Sites > Network Admin menu in the admin toolbar.
It will show you a list of sites on your current multisite installation which by default, you have your primary site listed as the only site in your WordPress multisite network.
To add a new site, simply click on the Add New button at the top.
On the Add New Site page, provide the site’s address. The full address is not necessary, just the part you want to use as subdomain or sub-directory.
Next, 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 the email address is not currently in use by another user, then WordPress will create a new user and send the username and password to the email address you enter.
Once you are done, click on the Add Site button.
A new site will be added to your WordPress multisite network. Being the network admin, you will receive a new site registration email as well.
If you created a new user, then that user will receive an email with instructions to set a new password and login.
Install Themes and Plugins on Your Multisite Network
Individual site administrators in a multisite network cannot install themes and plugins on their own by default. But as the network admin, you can install the respective plugins and themes, so it’s available for all sites on your network
Installing themes for your multisite network
To add themes, go to My Sites > Network Admin > Themes page.
You will see a list of currently installed themes on your WordPress multisite.
You can make a theme available to other sites by clicking on Network Enable option under that theme. You can also disable a theme by clicking on Network Disable link under the theme. Always remember that Network Disable option will only appear when the theme is enabled.
To add a new theme, click on the Add New button at the top of your screen and then install a WordPress theme as you would typically 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.
Setting a default theme for your Multisite Network
After 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 to be the default theme for new sites, then you need to add the following code to your wp-config.php file.
// Setting default theme for new sites
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 out by looking at the /wp-content/themes/ folder.
Installing plugins for your multisite network
Similarly, you can visit My Sites > Network Admin > Plugins page to install plugins and click on the Network Activate link below each plugin to activate them on your multisite network.
Troubleshoot Errors
Incorrect configuration of wildcard subdomains and domain mapping issues are the roots of the most common issues with WordPress Multisite Network. Make sure that your web host supports wildcard subdomains before setting up multisite.
Here are some other common issues and their quick fixes.
Fixing login issues on multisite installs
Another common issue is that when using WordPress multisite with sub-directories, some users are unable to login to the admin area of their sites after they add the required code in wp-config.php file.
To fix this, try replacing
define('SUBDOMAIN_INSTALL', false);
line in wp-config.php file with
define('SUBDOMAIN_INSTALL', 'false');
Find unconfirmed users
Another issue that you may come across 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.
Conclusion,
So, this is how you can manage your multisite network. And, if you encounter any problem with setting it up, you may want to ask help from your web host support.
If your web host doesn’t support the WordPress multisite feature, I’d recommend moving to another web host.
I’m still struggling to understand a little on this subject. OK I get the sub domain which I have already set up for affiliates and a different language website. However, what would be the main reason to set up a subdirectory? Am I correct in thinking that simply adding categories would be doing the same thing without the need for fresh WordPress installs? If we simply show the category in the URL, isn’t that doing the same thing? Lastly, if setting up a subdirectory would it be best to do this as a WordPress multi site? As your post, doing it this way mean’s there’s only one WordPress them to update etc! But will the multi sites bee seen from Google as different topics!
This is if you want to have separate websites, but they share the same single WordPress install for easier maintenance.
I have always been confused on how it would be used in real life, as in why would a client want their primary domain to be a subdomain of my domain.
I understand that sites like wix and wordpress do it successfully already but most of your readers and I aren’t that big for this to make sense.
Can you add real world cases where this would make sense as a legitimste business?
You can do domain mapping. So it would be their domain, not a sub domain.
very useful information. Wish i had Saas Business
very nice article