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.
Hosting
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.
Wonky Plugins
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 Sites
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.
Dashboard Navigation
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.
Niki
I run multisite, too, and I also experienced a good share of problems with it initially, mainly due to a huge bug in WP v3.8, coupled with some issues with my host. But that has long since been resolved, and so far everything is running just fine. I use it to develop client sites without having to do yet another WP install, but I do not host any clients on it, it’s all for myself. I like being able to update WP and its plugins once vs. six or more times. So I quite agree with your stance on it - it’s good for certain scenarios.
Andrea Whitmer
Thanks for stopping by! I think it’s interesting that you use it for client sites… The idea of using Multisite for dev feels a little scary to me - what do you use to export to a standalone site once you’re done? I always had trouble separating them out, but it’s been a few years since I had to do that.
Marcy Diaz
You really had a busy weekend! Multisite too! I installed Multisite locally a couple of years ago to do local theme development, but back then BackupBuddy was not the best for migration. So I stopped that in a hurry. Mika’s Multisite book really helped.
I think it makes a lot of sense for your purposes though. I hope it saves a lot of time and is easier to manage now.
Andrea Whitmer
Let’s hope! Knowing my luck, someone will release a magic easier way to do what I need next week. Hahahaha
BackupBuddy’s Multisite importer has come a long way, but if you’re bringing in a site with existing users and a lot of database tables, it doesn’t handle things very well. I contacted support to see whether there is a manual import option and got a pretty useless response, so I’m guessing that’s not the best approach. Luckily I won’t be adding any other sites unless they are clean installs so I’m just crossing fingers that the worst is over!
David
Totally relate to your experience here. I’ve used multisite for years now, and have tripped over everything that will trip you up (I think) so holler if you ever get stuck and I’ll be happy to take a look 🙂
David
Love the new design too btw. So modern and stylish *jealous*
Andrea Whitmer
You have no idea how glad I am to find someone I can bug with all my random questions! You may regret the offer, but thank you! I’m pretty proud of the new theme; the old site was so awful I couldn’t stand to look at it anymore.
Edwin
Great article on your thought process of moving to multisite.! I’m going through the same thing and one thing you said caught my eye, “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. ” Specifically, the ” … if you use subdomains without domain mapping” part. I need single sign on to work and have 2 questions:
1) I’m considering using subdirectories instead of subdomains, but your sentence gives me the impression that *only* with subdomains and *no* domain mapping does single sign on work. Is that correct? Can I use subdirectories and still have single sign on capabilities?
2) Once a registered user is added to a site, can a global user role editor be used? Or would user access rights have to be setup for each user on each site?
Would love to hear your thoughts on these q’s. Really trying to avoid going down the multisite path and then later to find out it isn’t flexible enough for my needs.
One last question that I haven’t found a solution for … I’m looking to have some (not all) posts be created & managed in one site and viewed/listed in different sites. I’ve read this feature doesn’t come out-the-box. Know of any solutions on this?
I appreciate any wisdom you can share. 🙂 Thx!
Andrea Whitmer
Hi Edwin!
I *believe* single sign-on will work with both subdomains and subfolders. It doesn’t work if your subsites use separate domains, such as apples.com and oranges.com, but as far as I know, it will work with subfolders/subdirectories the same way it works with subdomains since the main domain doesn’t change.
My multisite is still pretty empty as far as users go (the membership portion isn’t finished yet), but I did confirm in testing that if a user signs up on one site, s/he will have the Subscriber role on other subsites and will be logged in. There is a plugin called Multisite User Management you can use to set up default roles for each subsite, which will be assigned automatically when a user is created. It hasn’t been updated in quite awhile but I believe it still works.
Re: blog posts, you might take a look at WP RSS Aggregator - basically, it allows you to pull in posts from other sites via RSS and have them publish as posts on your site automatically. It’s a little pricy but it works very well.
I hope that helps! I’m definitely still learning as I go. There aren’t very many resources available that are up to date, unfortunately.