With our next release, we’re giving WordPress Network owners some love – if you’ve not already seen it, then check out this post from last week on a different new feature.
One popular feature request is from WordPress Network (a.k.a. WordPress Multisite) owners. They want the ability to import backups from stand-alone WordPress sites into their networks, as new sites.
As a concept, this sounds very simple. It only took one sentence to describe.
As something to actually make happen, it’s highly problematic. Why?
- Some parts of WordPress’s internals are shared by the whole install (i.e. all sites on a network); some are per-site. Plugin files are shared – which means you can only have one version of a plugin on a network. If you want to have different sites using different versions.. then it can’t happen.
- Some plugins behave badly (not every plugin has been tested by its author on multisite, let alone de-bugged), and store per-site resources in shared locations – which means that you can only merge a single site with one of those plugins by getting your hands dirty in WordPress’s innards.
- And then there’s the problem of users – there’s only one user database on a WordPress site, and each user has a unique numeric ID (1, 2, 3…) – but if you want to import data from another site, then it may have its own set of users and IDs, which may clash, and may be stored by any of WP’s 40,000+ plugins in strange and non-standard ways (which are impossible for a generic import process to know about).
That’s just for starters. Thankfully, WordPress core functions (posts, pages, comments) work pretty well, and if you just want to import post/page content, then the built-in “Import” and “Export” functions on the dashboard “Tools” menu work well. What, though, if you want to import a site’s theme, plugins, options, etc.? That’s hard work. That’s where UpdraftPlus can now help.
We first received a feature request for this capability in early 2013. Someone offered to fund the development; we wrote initial alpha-quality code to do this, and then the guy who was interested vanished. So, we let it languish. But, it’s been requested enough now for us to come back, and make it a feature. Below is a screenshot from our current internal development copy of UpdraftPlus, importing a single site into a Network.
It works, and can save a huge amount of time, as long as you understand the inherent limitations of the concept, and have a realistic idea of what kind of sites it can be used with. Because of those limitations, which aren’t fixable without WordPress’s internals being fundamentally different to what they are, this feature will be in an eternal “beta release / limited support” state. We’ve put up some longer documentation for those who want to explore this feature, here.
David Anderson (lead developer, UpdraftPlus)