Question: can I restore single sites to a multisite?
No. You cannot do that. A "multisite" installation is not, in fact, multiple sites. It's smoke and mirrors which make a single site, multiple content tables installation appear to be kinda-sorta-but-not-quite multiple sites. More specifically, each blog in the blog network (yeah, even WordPress doesn't call them"sites") can only use the plugins and themes enabled globally, from the Network Administrator panel. Moreover, the content on each network blog is not organized in exactly the same way as on a standalone site. Some content tables are nearly identical. However, options are split between the blog's database tables and the global tables, users are kept in the global tables and assigned to each blog and a myriad other small differences.
These differences are so great that restoring a single site into a blog network is outright impossible.
The themes you have purchased are typically not just themes but a set of plugins, a theme and content. You'd have to install all of these on the network. Then you'd have to export the content of each single site and import it to a new network blog. This does not copy all of the content, just core WordPress content, so you'll probably have a lot of manual work to do. Forget about transferring users, they will have to re-register on the new site. Moreover, the nature of a blog network also precludes you from using plugins which assume that they have direct control of the entire site such as most e-commerce plugins.
Furthermore, WordPress does not give you a user interface for having a blog network where each network blog is its own domain. It either supports subdomains or subdirectories of a main domain. You can
coax it into using a different domain per site BUT it requires a substantial amount of database editing and is best done before adding any content. Even so, trying to backup and restore the resulting WordPress blog network to any other server is really hard and very prone to failure since what you're doing is, essentially, an undocumented hack that was implemented in WordPress only so that WordPress.com would be possible.
On top of that there are practical considerations with a multisite installation. All plugins are installed centrally. If Theme A in one blog is only compatible with Plugin X version 1 but Theme B in another blog that you created later is only compatible with Plugin X version 2 you've hit a roadblock. Your options are either updating (and possibly repurchasing) Theme A to a newer version or going with a different theme for the other blog. Moreover, the entire blog network (all of your site) are on one hosting account with CPU usage, disk usage and bandwith usage limitation with all the problems that entails, not to mention things will be considerably slower.
Finally, from a security perspective, a multisite installation is especially challenging and unadvisable. You are one vulnerable plugin, used in only one network blog that you don't really care about, from your entire blog network being compromised.
I understand the allure of being able to update one installation to keep all your sites up to date. However, this is not why a multisite installation was implemented in WordPress nor how it's meant to be used. The idea behind multisites was more like each department or region having their own blog
under the same domain name. While you can hack it into submission to be used as a collection of multiple, unrelated sites you are doing so at your own risk and peril. It's a world of hurt.
And before you ask the follow up question: no, you cannot go back from a multisite installation to individual, standalone sites either. We've researched that and at best it's a hit and miss because of the way options are organized in a multisite installation. WordPress codex basically says it's not possible but for content export and importing it to a new installation. We decided not to support this because it was so unreliable and apparently unsupported by WordPress.
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!