Ready to watch this entire course?
Become a member and get unlimited access to the entire skills library of over 4,900 courses, including more Web and personalized recommendations.Start Your Free Trial Now
- View Offline
- Optimizing the hosting environment for Multisite
- Enabling the Network feature
- Troubleshooting network configurations
- Creating your first site
- Installing and enabling themes on a per-site basis
- Defining a default theme sitewide
- Controlling access to sites
- Enabling features for site administrators
- Displaying a list of networked sites
- Broadcasting news across all sites
- Gathering and using comments network-wide
- Mapping domains and mapping to certain sites
- Installing and configuring BackupBuddy
- Migrating a stand-alone site into a network
Skill Level Advanced
There may come a time as you're working with the WordPress Multisite Installation that you feel the need to move your entire network from one place to another. This could be if you're working in a development environment locally on your home machine and you want to take that environment live on the web or if you simply need to switch from a testing server to a live server. In this case, I'm going to be utilizing one of my testing domains to move a site to a live domain, and I'm going to do that using the BackupBuddy plug-in. So I'm able to take an entire Multisite installation and move it from one domain to another. Pretty cool.
I'll go down here first to the BackupBuddy section of my Dashboard, and notice I'm logged in as the Network Administrator while I do this. I'm going to go down to Backup & Restore. If you haven't already done so, go ahead and generate a full backup of your site. I've already generated one for myself and downloaded it to my Desktop. Now what you'll need to do is download the Beta version of BackupBuddy's ImportBuddy script. This will then allow you to import your Multisite installation into your other domain. In order to access the ImportBuddy Beta, you must click on this link here.
It's a little misleading because you would think that you'd click down here, the same place you'd download the non-beta version, but in this case, you click right here. Once you click that, it downloads the file automatically for you. Once you have the ImportBuddy and your Full Backup downloaded to your hard drive, it's time to get to work. Let's move over to my code editing window. Once I'm inside my code editor I want to navigate to the domain where I want to stick my new Multisite installation. I have to do two things here. I have to first upload the ImportBuddy script and then also upload the BackupBuddy backup file.
I'll navigate to my desktop and drag the backup file into the destination folder. Then I'll grab the ImportBuddy script and throw it in there as well. Once I've got those pieces in place, I'm ready to keep going. Let's move back to the web. For this next portion I'm going to be using the cPanel, which most hosting companies provide for you. Inside of my cPanel I need to make sure that I create a database for this WordPress Installation to live on. So in the Home section of my cPanel I'll navigate down and in this case I can just use the MySQL database wizard.
I can create a database, in this case I'll call it wpms for Multisite, click Next. It asks me to create a user I'll call it Justin. My password, just do something quick. Once I do that, I'll create my user. It may come up and give you an error saying your passwords don't match. If they do, go back and try it again.
Once you've got your passwords matched, it automatically creates the database and your user. I'll give myself all the privileges, Next Step. Now my database has been created. I'll leave this up so that I have the names for reference in case I need them later. Now I'm ready to start the migration. I'll go back over to my gnawledge code domain. At the end of the domain in the Address Bar I'll append a slash and then I'll type out importbuddy.php. Once I get here, you'll notice it takes me to the BackupBuddy Restoration & Migration tool.
I'm on Step 1 of 6, and right now it's telling me that I need to select the BackupBuddy file that I want to import or migrate. In this case it finds automatically the backup file that's located inside of my root directory, and that's okay. I'll hit Next Step. It's going to go through and extract all of the files. If the files are successfully extracted, it will tell you that here. If there are any problems BackupBuddy will let you know. Once I've clicked Next, it takes me here to Step 3 of 6. In this case I'm going to enter in all of the settings that correspond to my WordPress Multisite.
Stuff like my WordPress Address; that's just the domain name. Your Multisite Domain--this is the base domain that's going to be used to add on all of your subdomains. Your Database Settings--most of these are going to be provided by your hosting company, the first of which is your MySQL Server. The great thing about BackupBuddy is it puts in the recommended value and also tells you what it was previously. If you happen to be moving from one domain to another on the same server, chances are that's the same thing. However, if you want to check with your host to make sure you know the exact MySQL Server address, that would be good as well. But 99% of the time, the local host is what you're going to use here.
Your Database Name--this is the name of the database that you created. If you remember correctly in my Control panel, I created the database earlier. Let's go back down to that. I'm on MySQL Databases and I created seeley_wpms, so I'll call that wpms. Database User, that was Justin, and then the Database Password, and then a Database Prefix.
It's just going to be wp_. I can test my database settings. Everything looks to be successful. If you get any errors here, it's probably because you misspelled something in the list above. Go back and check those settings one more time and try it again. If everything looks successful, hit Next Step. It goes through and imports everything into the database, and it tells me here that the initial database import has been completed. I'll click Next Step. This time it's going through and it's bringing in all of my WordPress files. It's telling me here that I can verify the site functionality and then delete my backup file and ImportBuddy script from my site if I want to.
It's also telling me that I can run a File Cleanup here at the bottom. The first thing I'm going to do is open up my site and make sure it's okay. When I open it up you can see now the Migrate Me Please site is now live on gnawledge.co. I've successfully migrated to an entire Multisite installation from one place to another. Don't believe me? Let's login to the backend. Once I'm logged in to the backend, you'll see here that I get My Sites and there's Migrate Me Please, Site 2, Site 3, and Site 4.
I can visit any of these sites that I want to in the browser and they're all exactly as they were inside that other WordPress Multisite Installation. That's pretty quick and painless. Let's close these up and finish up with the BackupBuddy Restoration tool. I'll clean up and remove the temporary files. Once the BackupBuddy has finished, it tells me the import is complete and I can now visit my site. Let's close these up and I'll go back to the domain. Once I get back into the domain, I can now work with this as if it was still that same WordPress Multisite Installation, because basically it is.
You've just moved it from one place to another. All of your files, all of your themes, all your plug-ins, and hopefully all of your settings have all been transferred over to this new installation. So you took an entire network from one end to the other in just about five or ten minutes. That's going to save you a ton of time and alleviate a lot of headaches in the future. So if you're a developer and you're not using tools like this, you're really doing yourself a disservice. So take some time and practice as a few times, going from a local host to some dummy domains or something like that.
Once you get the process down pat, you will be ready to move any site at any time from local to remote or from a live environment to another live environment. Possibilities are endless.