For as long as I can remember, WordPress Multisite has been the redheaded stepchild of the internet.
I started working with WordPress in the spring of 2009, shortly before version 2.8 was released. Multisite (Multi-User then) was rolled into core a year later with the release of WordPress 3.0. For a little while, it exploded – everyone I knew wanted to create a 21st century Geocities and invite all their friends.
It didn’t take long for the limits of Multisite to outweigh those well-intentioned urges. It was hard to set up. Many plugins weren’t compatible. Separating sites into standalone WP installations was a total pain. Mika Epstein, one of the few true Multisite experts out there, wrote a now-ubiquitous article about why you shouldn’t use Multisite at all.
My personal experiences with Multisite haven’t been great. I’ve encountered it in two main contexts:
(1) Migrations. When I ran a small hosting company several years ago, I had a few customers who needed their sites extracted from a Multisite installation. Usually, a designer or developer had created the site, then used Multisite to provide “hosting” (otherwise known as “I’m holding the site hostage so you have to keep paying me”). Without Super Admin credentials, it was nearly impossible to get the necessary files and database info needed to move the site.
(2) Troubleshooting. Multisite often brings interesting challenges. It requires advanced planning, some technical know-how, and boatloads of patience, all of which may be lacking in the average WordPress user. While a standalone WP install might have a few hiccups at times, Multisite problems are usually akin to a nuclear explosion – you don’t just break one site when something goes wrong; you break them all.
When Multisite Becomes an Option
Given all the sensible reasons NOT to use Multisite, I never thought I’d be writing a post about working with it in any context, let alone for my own websites. However, a couple of circumstances led me to give it a shot. If you’re reading this post on my site, you’re currently hanging out on a brand new Multisite install (and a brand new design as of this writing) – welcome aboard!
Until this weekend, Nuts and Bolts Media has existed in three separate pieces – the main site, a subdomain for client invoicing and appointments, and another subdomain-that-must-not-be-named, which will be launching this fall (ahem).
There were a couple of problems with this approach:
1. Plugins: The three sites had about 20 plugins in common, but each site also had very specific functionality requiring additional plugins. I originally split the sites because I couldn’t handle the thought of cramming all those plugins on one monster WordPress install. Yet I had this nagging feeling that there was a bit too much overlap…
2. Updates: I use MainWP to manage updates and it works beautifully. That said, it got a little old keeping up with the separate sites and all their various updates. Sometimes one site would show an update sooner than others and I’d wander off to force the other two sites to check for updates, which is really distracting and a waste of time.
3. Logins: Logging into one of my sites did not necessarily mean I was logged into the others. That’s fine for me, but I needed my users to be able to move between the sites seamlessly without logging in multiple times, or to be able log in from any of the three login screens. There are a couple of plugins that claim to allow single sign-on but I couldn’t get any of them to work reliably.
4. Themes: The sites were all using variations of the same custom Genesis theme. Half the time I would think I was editing one stylesheet only to find that I’d changed another, and I’d have to flop around to fix whatever I’d messed up. Or (even worse) I’d need to make a global change and it had to be implemented three times.
Multisite to the Rescue
Once I got past the gut reaction of Multisite is bad, and you should feel bad for considering it, it actually started to make a lot of sense.
Being able to activate the shared plugins across the network streamlined things quite a bit. I can view which plugins are active on each site from the network dashboard instead of logging into three separate places. If all three sites need an update or a new plugin, I can get that done in a couple of clicks.
One of the things I did not know about Multisite is the fact that logging into one site does log you into all sites if you use subdomains without domain mapping. That doesn’t necessarily mean you have the right level of access, though; if a user isn’t specifically added to a particular subsite, s/he has a weird pseudo subscriber status that doesn’t do much. Still, there is no logging in and out required, and logging in from any WP login screen will work.
Since I was already combining things, the move to Multisite was also a great time to redesign my site (I made it 14 months on the previous theme, which is an all-time record) and create one theme to rule them all. Instead of maintaining 3 themes, there is now one, and my world is a happier place.
But wait… There’s more!
Before you start thinking Multisite is the answer to all your problems, let’s talk about just a few of the caveats and utter disasters I encountered during this transition.
Until about a week ago, I was sailing through my online life with a dedicated server running pure Nginx. When I tried to convert my staging site to Multisite, though, I broke the entire universe because of some existing server settings that really couldn’t be changed easily.
I’d have to write another post (or maybe a few) to tell the whole story, but in the end, I ended up moving ALL my websites to Cloudways, back into the comforting arms of .htaccess and the ability to start fresh. This also involved changing my email hosting, as well as a ton of DNS nightmares that I might be able to discuss one day without bursting into tears.
These issues probably wouldn’t happen to everyone – they can’t possibly, or else no one would use Multisite ever – but there are still LOTS of technical considerations. If you aren’t very comfortable with .htaccess and rewrite rules and all that fun stuff, I wouldn’t even go there. I know what I’m doing (okay, most of the time) and I still nearly had a breakdown.
Believe it or not, most plugins have no trouble adjusting to the Multisite life. However, I did have a few that freaked out and just didn’t want to work anymore. Hunting down alternatives was time-consuming and annoying.
Importing existing sites into a Multisite network is shockingly un-fun. BackupBuddy made the process super easy for both of my subdomains, but there were a lot of issues. Since Multisite networks use a shared database, the import process wasn’t quite as straightforward as it seemed at first.
I actually ended up having to remove both subsites from my network, add them again from scratch, and import all the content from a backup. Then there was the joy of activating plugins for each one, recreating users, going through settings…. I have a feeling I’ll still be finding things I missed six months from now.
Do you know how many times I deactivated a plugin or deleted content on the wrong site during this transition? Of course you don’t, but I’d estimate it was around 500 times. Minimum.
Now that I can easily switch between dashboards for each site, it’s not always super obvious which dashboard I’m currently viewing. This has been remedied by changing the dashboard theme for each one, but until that brilliant thought occurred to me, I felt like I was working blindfolded.
So is Multisite worth it?
For me, even after all the challenges I encountered, Multisite has been a worthwhile move. This is only true because the three sites on my network are interconnected and need to function together.
There are so, so many reasons not use Multisite, and if you’re thinking about it, I would highly recommend researching all other options before you make the decision to switch. If it’s possible to do what you need with single WordPress installs, I urge you to go that route instead.
Overall, I’ve learned more about WordPress and its quirks in the last week than I ever thought possible, and I do think it’s important to have a general idea of how Multisite works even if you don’t plan to use it. Thanks to rock stars like @Ipstenu and @andrea_r there are lots of support forum posts and resources available – you can read all you ever wanted to know and then some.
Bottom line: Multisite is great for some things but not for everything. Do your homework before deciding it’s the right choice for you, and allow yourself plenty of time to implement it if you’re brave enough to give it a try.