I guess The Recession is over. This year, I suddenly needed more than 2 development sites going at once. I had 2 separate installations of WP on my server just for development, stored in subfolders, plus numerous other separate installations for live sites. (Yes, I develop sites online, let the client see it in action, and make live adjustments. Mockups are nice, but they don’t have the same feel as a live site.) I realized that with a WP Multisite setup, these dev sites can then be simply added to a multisite ‘network’ once they are ready to go live.
I initially thought this type of arrangement could work well for small sites with less than 1,000 visitors a month, sites that were informational, not ecommerce or concerned with building their SEO. The Little People. Since starting WordPress multisite development, I’ve read that it’s really no different than a regular WP install. The browsers are just calling on the same files, is all.
Online, there is a lot of really outdated information, e-books and ‘tutorials’ about the WP Multisite setup. Four or 5-year old posts refer to WP 3.0. WordPress has changed a lot since 3.0. One of the big changes is that WP Multisite setup is now an option when WordPress is installed through a cPanel, instead of having to install it by uploading files.
Why Use a WP Multisite Setup?
These are some of the ways people use Multisite:
- Theme developers use it to showcase different themes in subdomains like ‘theme1.somedomain.com’.
- Hosting resellers use it to sell ‘website in an hour’ sites.
- Designers use it for site development.
- Bloggers use it to separate their ecommerce from their main site.
Differences Between a Regular WordPress Site and Multisite
When you set up multisite, you are the SuperAdmin. Each site you then set up individually has a Site Owner. The SuperAdmin can jump around from site to site from one dashboard. But the Site Owners cannot access each other’s sites. In fact, they have limited privileges.
The differences between a regular WP setup and multisite setups are
- Multisites have no cPanel of their own; they are essentially ‘virtual’ sites;
- Content is stored in one big database although each site’s data is kept in separate tables.
- The Site Owners cannot add plugins or themes themselves
- You add themes and the site owners can choose the theme they want to use
- Plugins can be ‘network enabled’ meaning they can be available to the entire network.
- SuperAdmins can add plugins to one specific site that are not network-enabled.
- SuperAdmins can easily move in and out of all sites from one dashboard
- Site owners have access like a regular WP site and can change their own content
- Settings are a bit weird and not as easy to understand as a regular WP site
- SEO is not affected by a multisite installation
- Updating plugins and themes is simple for a network of sites
Note that there is nothing in that list about quicker server response time, faster loading sites or a reduction in memory usage. Also, note carefully that not all plugins work with Multisite, so be sure to find some confirmation in the plugin description that it is multisite compatible or search the support forum for this question.
SEO is not affected by a multisite installation because the search engines recognize these sites as just another WordPress site.
With network-enabled plugins, updating is simple across the entire network. All my sites are built on Genesis and use Dynamik for styling. The settings for these themes are easy to hide from the site owners so they cannot mess with them. And once I update WP and the themes, the updates take place across the entire network of sites. One click updates everyone.
As the SuperAdmin logging in to the dashboard of the root domain, you will be able to access all plugins that are activated network-wide, or just go to any site in the network and activate a separate plugin, theme, change passwords, etc.
The site owner does not have access to everything you see. Their dashboard left navigation will not, for instance, show the ‘Plugins’ tab if you disable that in the Settings tab of the main domain. Otherwise, the only plugins that will be visible to the site owner in Plugins are those that are network-activated. And any network-activated plugin will show up in the left navigation bar (if they use a separate tab) or under their normal position in the Tools, Plugins or Settings tabs. So the site owner can access the plugin and configure it, but cannot delete or deactivate it.
So where to start?
Ask your host if they support wildcard DNS and if they also have Apache Rewrite module installed. You should have 1,000MB of memory available to run WordPress well. Look at the WordPress installation screen to see if there is a ‘Enable Multisite (WPMU) ‘ checkbox.
I really didn’t want to mess with the config file based on 4-year old information, so I used Softaculous to install multisite in the root of my domain. This will overwrite any other WP install in there. Softaculous automatically created a ‘subfolder’ installation instead of a ‘subdomain’ install.
Then I panicked. I wanted to be able to convert the development sites to live sites easily, using their own domain name. This seemed to require a subdomain installation. I resigned myself to trying to either flip it to a subdomain installation or figure out how to map domains to a subfolder.
Mapping Domains to a Subfolder or Subdomain Install
Turns out, it’s ridiculously simple to map domains to a sub-folder using the Domain Mapping plugin. This is all you need to do:
- Install the Domain Mapping plugin from WPMUDEV on the network plugin panel
- In the WP Admin panel, add the new site to the network under Add New Site
- Add their domain name to the domain mapping plugin (My Sites/Their Site/Tools/Domain Mapping – add domain name in custom field and click Add)
- Point their domain name on their registrar/host to your nameservers
- Park their domain in your root install’s cPanel, under ‘Parked Domains’
How easy is that?
Hide Some Plugins from Site Owners
Another thing you can do is hide some plugins from some sites that won’t be using them. Not everyone needs a calendar, for instance. In the settings for WP multisite setup, you can completely disable the Plugins tab in any site’s backend so the site owner cannot access it, but you probably want visibility for some plugins- Akismet should be enabled, for instance, but the site owner needs to get their own key.
To enable plugins on some sites and not others, I used a plugin called Plugin Enabler. Very quick and easy to install and use. But one caveat: don’t ‘Network Activate’ a plugin if you want it to be available to some site owners and not others. Network Activated plugins will not show up in the Plugin Enabler list and will show on every site. Find this great plugin in the repository on wordpress.org.
Setting Up Email Accounts for Multisite Site Owners
Honestly, you really want to convince clients to use their domain host for email service. This is an easier setup for you and most domain providers offer email service or forwarding. Because the domains are parked with you, you can set up either a full email account with webmail access or simply have the email forwarded to a personal email account. So when you go to the cPanel’s ‘Email Accounts’ or ‘Forwarders’, their parked domain is included in the dropdown list. Pick one and configure the forwarder or account.
One caveat: If the email is simply forwarded, clients need to know how to respond to emails from a personal account with their domain name as the ‘Reply To’. This will be an issue, so suggest your client do this through a gmail account. Hover.com has a great resource for gmail., Outlook and Mac.
Think Carefully Before You Do This
The weirdness of not having a cPanel: ‘how do you add a robots.txt file” or ‘where is the htaccess file’? I have heard some talk about not doing this if the clients cannot know that they’re in a network. And do note that there must be good reasons why the multisite network WordPress.com does not allow plugin installation on their sites. If your sites are sympatico, rarely change and you are the webmaster, I say go for it. You can always move their site to a separate install if they outgrow the limitations of multisite.
A good resource for details about Multisite is Mika Epstein & Andrea Rennick’s ebook series WP Multisite 101 and 110. Be sure to get a copy of these.