migrated file just downloads Migrating from WordPress. Save time and let the Ghost team do all the work on your behalf; no coding, no configuration, no worries. This migration is included with any Ghost(Pro) Standard Annual plan or higher, and has a lead time of two weeks. Get in touch with [email protected] to get started. With our WordPress Export Plugin you can smoothly move your content from WordPress to Ghost. In this guide we’ll show you how to export your content from WordPress, import it into a Ghost site, and take care of important details along the way. Keep in mind that a migration from WordPress will not include custom fields, metadata, shortcodes, custom post types & taxonomies, or binary files. Just posts, pages, text, and images. Prerequisites. The Export to Ghost plugin exports posts, pages, tags, authors and images from WordPress sites. Once you’ve imported your content from WordPress to Ghost, you’ll benefit from a suite of native features for all of the functionality you’re used to, without the need for additional plugins or downloads. Plus, if you want to connect all of your existing tools, we have hundreds of integrations to support that too. Installing the plugin. Log into your WordPress site and navigate to Plugins using the sidebar menu. Click Add New and use the search field in the top right corner to search for Ghost Export , or you can follow this direct link to the plugin. You’ll know it’s the right plugin if the author is Ghost Foundation . Click Install Now and then Activate . Preparing your content for export. Once the plugin is activated navigate to Tools and then Export to Ghost with the sidebar menu. You’ll be presented with a small preparation guide to make you aware of what will be exported, and how to prepare your WordPress content for Ghost. Converting categories to tags. Tags will be exported from WordPress, but not categories. This can be remedied using the Taxonomy Converter plugin. The following steps will permanently change the content structure of your WordPress site. If you are unsure of making this change please use the standard WordPress Export tool under Tools > Export to create a full backup of all your content. Navigate to Import in the sidebar menu and click Run Importer under the Taxonomy Converter import item. Use the checkboxes to select the categories you want to import into your Tags and therefore into your Ghost site. Then click Convert Categories to Tags . Tags and categories are almost exactly the same in terms of functionality. Categories are meant to mark pieces of content exclusively, meaning a post cannot exist in two categories at a time, a concept which can be managed very well with Tags in Ghost. Exporting your content from WordPress. Now that your posts, pages, tags, authors and images are ready to be exported navigate back to Export to Ghost within Tools in the sidebar menu. Click the Download Ghost File button. If all goes well you’ll have downloaded a zip file containing all your content. Troubleshooting. In some cases your WordPress installation won’t be able to handle how much content is being exported, either because there’s a lot of data or because the WordPress install hasn’t been given enough time to process the data. If you do encounter these problems click .json below the download button. This will produce a single file which will contain all your posts, pages and tags and will skip the image downloading step. Images normally take the longest to download in any site export, so if you’re struggling with the download you might have better luck downloading them directly from the server, or asking your site administrator. When the images are downloaded, they need to be stored with the following directory structure: You can zip the images directory, and upload to Ghost. URL paths for content images will also need to be updated as the directory structure is different. Open the JSON file in your code editor, and use find and replace to replace the old structure with the new, for example: Find https://exmaple.com/wp-content/uploads/ Replace with: https://exmaple.com/content/images/wordpress/ If you want to remove the /wordpress/ part of the image URLs, you will also need to change the feature_image value of each post in the JSON file to remove this. Importing your content to Ghost. After the download is complete you’ll be left with a zip file containing your data and images. The JSON data file can also be used in these steps. Images will need to be uploaded alongside a JSON data file in a zip file. Log into Ghost admin and navigate to Labs view. Click the Choose file button within the Import content option and select your exported zip file, then click Import . All your content will then be imported into your Ghost site Ghost may warn you if there are any pieces of duplicate or malformed data. Large image sets. If you have hundreds of images, you may find uploading multiple smaller zip files works better. Aim for approximately 100mb of images per zip file, and upload these one by one until they’re all uploaded. Changing domains. In some cases exported data still contains the original WordPress domain you were using. This is fine if the new Ghost site is using the same domain, but if not you may need to modify the JSON file before importing. Open the JSON file in your code editor, which can be found by unzipping the export file, and use find and replace to replace the old domain with your new domain. Save the changes and zip the export up again. Authors who were migrated will most likely need to reset their passwords, which can be done when logging into Ghost. Pro tip: Just set up your site and want to remove the placeholder content? Head on over to Staff and select the Ghost user. Use the cog icon in the top right corner to delete this user, which will in turn delete all the placeholder Ghost content Summary. Congratulations on your migration to Ghost . All that’s left to do is check over your content to ensure the migration has worked as expected. We also have a guide on how to implement redirects to make your transition smoother. Move a WordPress Site by Moving the and Files. The following is a guest post by Erez Elias. Erez recently attended a WordCamp and wrote to me inspired to write something about WordPress. We agreed this was an interesting topic, and one I’ve been meaning to document myself as it’s something I’ve done about 100 times in my life and there is always one little detail I gotta look up. One big source of frustration I’ve seen from WordPress users comes when they want to move their WordPress site. As in, move the entire from one hosting company to another hosting company. In this article I will walk you through 4 simple steps of moving a WordPress website to a new hosting. This article assumes that you have access to both the old server and the new server. You can log into both of them via FTP or SSH. Step 1) Back Up the Database. WordPress stores data in a MySQL database. You’ll need to move this database to move the site, which is arguably the trickiest part. You’ll need to back up the database from the old site first. Method 1) Use a Plugin. There is a method of backing up the database using a plugin. Note that If you are dealing with a large database (say, over 50 MB) you are better off using Method 2. WordPress has numerous plugins to backup the database, my favourite is a plugin called wp-db-backup. Once the plugin is installed and activated, select Tools > Backup in the admin. The plugin will look for other tables in the same database. These non “core” WordPress tables may have come from other plugins you’ve used that stored data in them. Select whether you want the backup file sent to you by email or downloaded directly and click the Backup Now! button. Method 2) Use the Command Line. We can get a little closer to the metal if we back using SSH. SSH (Secure Shell) is a network protocol that allows you to securely access your server over encrypted connection. First, you will need to connect to the server. You need to have the server’s IP address, username, and password. You’ll also need a command line client like Terminal for Mac or Putty for Windows. If it is the first time you establish connection you will see a prompt Are you sure you want to continue connecting? Type yes and press return. Then you will be asked to enter your SSH login password. After that, you’ll be connected to the server over SSH. Now you can export the database with the following command. You’ll need to replace the options in [brackets] there with your own information. The username isn’t the same here as your SSH login, it’s your MySQL access username. The database name you can get from the `wp_config.` file if you’ve forgotten. It will also ask you for a password after this command, which is the database password, which you can also get from the `wp-config.php` file. This will create a file (which you named in the last part of that command) which is a complete backup of your database. You may want to navigate yourself to a convenient directory to run that command in, so it will create the file there. Or put that file path in the command itself. You’ll need to get a local copy of this database.sql backup file. One way to do that is to FTP into the server, navigate to where you dumped it, and download it from there. Or, since you’re on the command line anyway, close out the SSH connection and use the scp command to download it. Something like: Step 2) Backup Files. Now it is time to back up the actual files from the old server. There are your theme files, plugins, uploads… everything. Even your WordPress core files, although this is as good a time as any to download a fresh copy of those for the new server. To download all your files off the old server, use an FTP client like Filezilla to log into your server. Either download everything from the web root, or just the `wp-content` folder if you’re going to toss up a fresh copy of WordPress on the new server first. It might take a while! It’s probably quite a few files and images. Step 3) Move the Files to the New Server. Now you can log into the new server, also via FTP, and upload the files to the web root folder that you just downloaded from the old server. This also might take a little while (uploading is usually even a little slower than downloading). Step 4) Import the Database to the New Server. In this step you will import the database to the server. This step also has two methods: via PHP myAdmin or via SSH. Method 1) via Control Panel. Most web hosts will have some sort of control panel they offer that gives you access to things like . It might be cPanel. It might be Plesk. It might be some custom thing. You’ll likely use the control panel to create the new database on your new server. It’s fairly likely the control panel gives you access to software called phpMyAdmin, which is a tool specifically for managing MySQL on the web. Open the new database for the new site. And now for the moment of truth: the importing of the backup `.sql` file from the old site! Click on import tab in the top navigation. Now you can select the `.sql` file on your local computer and run it (press the Go button). Method 2) via SSH. If the database file is too large, like with exporting, you can SSH into the server and do the importing there. First upload the database export to the new server, then SSH into the server (instructions on that in a previous section), then run the following command to run the import: Again the username here is the MySQL user, not the SSH user. You might also need to change some options. If you are changing the URL of your website at the same time as moving servers, you might need to do some additional MySQL work. For example, if you’re changing from domain-one.com to domain-two.com, you’ll need to change the siteurl and home options in the wp_options table. That won’t change hard-coded references to domain-one.com in post content though (e.g. image sources). If you need to change that too, there is some SQL you could reference in the post on moving WordPress to HTTPS that could be helpful. Hopefully, this article has helped you moving your WordPress site to a new location! 5 Ways to Migrate WordPress Sites. So you want to change the hosting and start to have migraine already because the WordPress system seems to be bulky. In this post, I would like to share some methods to survive the challenge. This is just from my experience, please feel free to share yours Table of contents. Before migrating. Backup all your files. Download and save it somewhere safe. If you have UpdraftPlus or some backup plugins, it may have a lot of versions saved in your WP project folder. You can delete some old backups to free up the space. Backup your database. Most important. Download and save it somewhere safe. Check if your new hosting provide auto migration. If yes, try method #3 first. WordPress migrating methods. #1. Stone-age method: Using FTP or File Manager. Even though it takes a lot of time and coffee to follow this, but many times this saved me after trying many methods unsuccessfully. What to bring to new server? If your new server has already an existing fresh copy of WordPress installed (nowadays many hosts do), you will just need to upload the /wp- content/ , wp-config.php , and your old database . If your new server has an existing fresh installation of WordPress, DO NOT JUST DELETE EVERYTHING BEFORE UPLOADING THE OLD SITE. You will need to see the database config of the new hosting, so please download the wp-config.php from new server’s WordPress installation first. You may need it later on. Some plugins may not be compatible with the latest version of WP, while the WP on new hosting is always the latest one. In the case that the site breaks and you want to use the plugins, you can delete WP folder and upload your old WP version. (Although I don’t suggest this because latest version means better security). How to migrate with FTP/ File Manager? First, from old hosting, go to cPanel > PHPMyAdmin and export your database as .sql. Then, open your .sql file in a text editor (Notepad is good enough). Find and replace all old domain name in the file with new domain name (if there is a new domain name). You will need a FTP software like FileZilla or WinSCP. Login to your account using the FTP credentials that your host provides and go to public_html folder. Then replace the /wp-content/ folder and wp-config.php in the new host with your own (remember to save the wp-config.php and .htaccess from new hosting somewhere). This may take a lot of time. Go to the website and if it has “ Error establishing database connection “, you need to refer to the wp-config.php of the new hosting to align its database config with yours. If the error still exists, you may have an issue with DNS record not yet updated. If flushing DNS cache from your computer does not work, try to access the web page with another wifi or 4G on your phone. Speed things up. In your new server, you can just replace the /uploads/ file, and go to new WP dashboard and install themes and plugins. They are installed much faster then being uploaded via FTP. #2. Plugin-lover method: Using WordPress plugins. Many plugins are even free like MigrateGuru or All-in-one WP Migration. In case you want to use plugins, just follow the instructions from the plugin description. is fast and quite reliable but they don’t work on localhost to live site mission or multisite. sounds good on small sites. With big site, be aware that it may output a file of. Based on your use case, you may only want to: Migrate only database. Really, in some cases you only need to migrate only database. For example if you store your /uploads/ somewhere on the Cloud (e.g with Google Clouds or AWS S3) and only need the link. Then on your new site, you only need to install the latest WordPress version and install themes and plugins. Then, migrate database. In this case, you may want to see MigrateDB Pro (paid) or WP Synchro (free if only migrate DB). Both of these plugins make use of pull/push process to migrate your DB very fast! #3. Hosting-grandpa method: Use auto migration service that your new host provides. This process is like a breeze. Your new hosting provides auto migration and with a click, your website will be migrated! At least I know that SiteGround provide this. They will ask you to download their migration tool with a migration key. The process after that is quite simple and straightforward. For me, the migration tool of SiteGround worked on 9/11 times. 2 times it did not work: Trying to migrate a Woocommerce website from Bluehost to SiteGround. Design of the theme broke. Trying to migrate from the Siteground temporary domain to another domain hosted also here. Never processed, informed error reading resources or so. #4. Catastrophe method: Only have access to old and new WP Dashboard. In this case you don’t have access to FTP, cPanel, SSH or whatever back-end stuff. That’s why it is called Catastrophe method, or more politely, Blogger method. Basically you will need to do all the labor job of creating a total new WP site. If you can install plugins, try method #2. If none works, then try the below. You can export files using WordPress Importer tool (free). Unluckily this plugin only allows to export content, not /uploads/ folder, not even plugin settings. So you may want to use also WP Export Media Library to download your images. Then, go to your new website, install all themes and plugins necessary. You need to magically memorize all the plugins settings and duplicate it to the new site. Again, use WP importer to import all content. You also can upload the images from the zip file downloaded by WP Export Media Library. I think one issue you may face is that normally the WP often group uploads with the month. So images which was upload last year may need to change the URL a bit. So if you go around and see some images broken, you can change the month part in your image URL. #5. GitHub method: For command lines fans. As mentioned before in WordPress workflow, GitHub can be used to host your code which can be quickly pulled into a new server. The prerequisite: you need SSH terminal to login to your root folder and perform actions from the command line. Sometimes you would need to perform extra action e.g secure your .git folder from public access. I think nowadays some hosts also provide GitHub services so make sure to check their documentation if they have. How To Migrate A WordPress Site From Localhost To Server Using Plugins. Building a site locally is a good idea, but just hearing the word ‘migration’ can strike fear into even the noblest of hearts. Luckily, migrating from local to live is easier than you might think… I don’t need to spend half an hour rambling on about why you should use a local environment to build your site…because I already did that here. But just in case you’re too fatigued to click on the above link and go a-a-a-l-l-l the way to another post, let me give you the cheat notes… Think Global, Build Localhost. A localhost or local WordPress setup is where you have WordPress and all of its required components like a database, PHP, and Apache server installed on your own computer or laptop instead of a webhosting server. There are pros and cons to using a WordPress localhost environment. When you set up WordPress online, you can share your posts and content with other online users immediately after creating these. Just click Publish and the whole world can access and view your content simply by entering a URL into their web browsers. This isn’t quite as simple with a local version of WordPress because everything is hosted on your computer, rather than online. One of the pros of using a localhost WordPress environment, then, is that you can create content, install, and test plugins and themes, mess with code and templates and customize files on your site without anyone else being privy to what you’re doing, as it all takes place in your own computer. In addition to being able to mess with things without anyone taking a peek at what you’re doing, there are other benefits and advantages to using a localhost environment. Like cost, for example. You don’t need to buy a domain or pay for webhosting until you are ready to take your site(s) live. Note that I said site(s) above. That’s because with localhost, you can build as many sites as your computer can handle…and you can work from anywhere around the world because no internet connection is required (yes, smartypants…even underwater if your computer is waterproof). By keeping a clone version of your real site on a localhost setup, you can also test different settings and customizations, make updates to your WordPress core installation, plugins, and themes, and spot any conflicts or issues that could affect your users before transferring these changes across to your live site. Localhost, Not Local(g)host. I’m here to tell you that if you’ve never migrated a localhost site to a live one, it’s not as scary as it might seem. Building a local or offline version of a WordPress working environment on your laptop or PC may sound like it’s hard and complicated, but it’s really not. All you need is a way to install applications like A pache (server), M ySQL (database), and P HP (program language) –note the acronym AMP , and there are several software packages (called stacks) that will let you do this. These include LAMP (), AMPPS (Softaculous), MAMP (Mac), WAMP (Windows), and XAMPP (Cross-Platform). If you fancy giving it a try but you’re not quite sure how to get set up with localhost, check out this XAMPP tutorial. Ok, Got It! Now, How Do I Take My Localhost Site Live? There aren’t many WordPress-related dilemmas that can’t be solved with a good plugin, so you shouldn’t be surprised to learn that there are a few solid ways to migrate your site without needing to set foot anywhere near a database. In this article, we’ll take a look at two easy-to-use methods to migrate WordPress from localhost to server and go live – Duplicator/SFTP, and our very own Shipper plugin. Either method of migrating your site is better than Devman’s! As Shipper is a Pro plugin, it’s only available to members, so if you’re not quite ready to take the leap, you can skip straight to the Duplicator tutorial further down the article (we won’t hold it against you.) Migrate with Shipper. First things first, you need to have Shipper installed on both your local site and live one. You can then open Shipper on your local site and select ‘Export’. For local sites, you can only use the export option. The next screen will show a list of the sites connected to your Hub – you’ll need to select your destination for the migration. You are then given the option to exclude any files you don’t want to be included. If you want to migrate your entire site and everything in it, simply click “Next”. You can use the advanced tab to exclude seldom-used WordPress files that you probably won’t need such as: Spam comments Post revisions Inactive themes Inactive plugins. When you’ve decided what you’re taking with you, it’s time for the Pre-flight Check. This will detect any issues that might crop up during migration and will display recommended solutions. Keep your fingers crossed during this stage – migrations don’t always go through without a hitch (but our team is always on hand to help if needed!) Once you make it safely past the check, you’ll need to choose a prefix for your database name. By default, the WordPress database table prefix is wp_. When migrating tables with Shipper, you can migrate tables with: Source’s prefix Existing destination prefix Custom prefix. With setup complete, you’re now ready to begin the migration. Click the button and then sit back and wait. You’ll get a rough estimate of how long your site should take to migrate based on the size of your files, and you can keep track of the progress with the bar as shown below: Shipper uses our advanced API to make sure the process is as stable as possible. It can take a long time to complete, but it’s worth the wait! Migration Magic? In the interest of complete transparency, I won’t sit here and claim that Shipper is completely immune to encountering migration headaches (you’ll be hard-pressed to find any plugin that is!). For example, there’s no knowing when you might come across an incompatible file, or rogue bit of code – causing your migration to hit the wall. The good news is, when you’re a WPMU DEV member, this should never be a reason to panic, as our expert team of WordPress superheroes are well-versed in rescuing people from migration misery. Another thing you may want to consider doing as a courtesy to your visitors is to use a free maintenance plugin while you’re doing work on your site. Not a WPMU Member? Give Duplicator a Go! So, Duplicator it is! First things first – head to the plugin repo and download it. The reviews speak for themselves. Step One: Package and Download Your Files. Duplicator allows you to download two files – an archive of your content and configurations as well as an installer.php script. These files hold everything you’ll need to transfer your site from one server to another. Open Duplicator and click ‘Create New’ to start the process. You’ll then need to name your file package ready for it to be compiled and downloaded. If you want a complete transfer of your site, you only need to fill out the site name on this screen. The Archive tab above allows you to exclude certain files from the transfer, just like with Shipper. The Installer tab allows you to input the database installer fields – if you don’t know them, that’s absolutely fine as they’re optional at this stage. You can now click “Next”, which will allow Duplicator to undertake a quick scan to make sure everything is in order before your files are compiled. If the scan doesn’t detect any issues, you’re good to go. Next, click the “Build” button, Sit back and wait as your files are packaged. Once your files are ready, you’ll be able to download them with the links below. You’ll need to download both the archive folder which will include all your files, plus your installer file. Use the One-Click option to download everything in one go. Step 2: Copy Installer and Archive Files to Live Site. Now that you have everything you need from your old site, it’s time to transfer all the goodness to your new one. You’ll be doing this with an SFTP client such as FileZilla. Firstly, you’ll need to connect your SFTP client to your live site using your credentials. If you’re using our hosting (which, let’s be honest, you should be), here’s a simple guide to creating credentials and getting your connection set up. Once your connection is established, you need to navigate to your public_html folder and paste all the files you downloaded (you may need to extract them from zips first). A popup will appear asking if you want to overwrite your files – click yes to all. You can keep an eye on the progress of the upload in the bottom left corner. Unsurprisingly, the larger your site, the longer it will take! Once your files are copied over, you’ll need to run the installer script. You do this by heading to “your-url”/installer.php. Just four simple(ish) steps now stand between you and a successful migration. The first is easy – wait for the validation checks to be completed and hope they pass with flying colors. If the checks do hit a hurdle, details of the issue(s) will be displayed. You can then decide whether it’s something that requires fixing, or if it’s something that won’t interfere too much with the migration. When you’re ready, click “Next”. When you arrive at the next screen, you will have to enter four sets of details. These details will allow the installer to connect to your live database and remove all the previous data. You can get the details by heading to the hosting section of the Hub and clicking on ‘Tools’. Click on ‘Reset’ and then confirm. You can then head back into FileZilla and download a fresh copy of your wp.config file, which will display the host, database name, username, and password. You will then need to enter them during this step of the installer. When you’ve entered your details, click “Test Database”. Step three allows you to rename your site if you need to. Then…you guessed it – click next! You’re almost there – just one last step! All you need to do is click on the “Admin Login” button and log into WordPress. Make sure you use the login details from your localhost site and not your previous live one! Once you have successfully logged in, you will be back at the good ol’ WordPress dashboard. Before you dive in, make sure you check the message from Duplicator: The files should be removed automatically, however, if this is not the case, you will have to get rid of them yourself. Time for a Migration Celebration or Commiseration? All going well, your locally-built site has now been deployed onto your live server! However, sometimes no matter which plugin you use, or how diligent you are, you’ll run into an issue or two. This is exactly why a support team of WordPress Superheroes are so darn valuable. When a problem hits, you don’t just need a second pair of eyes, you need reliable help, from a seasoned WordPress migrator, STAT! We know that when you’re in the midst of a migration meltdown, the last thing you want to do is log a ticket and twiddle your thumbs for 24 hours. Our live support team members know a thing or two about migrations and no matter who you’re hosting with or which method(s) you’ve tried, they’ll get you back on track. We mean it when we say our support team is on hand to help with ANY WordPress query. On that final note, if you’re reading this article because you’ve already had a migration malfunction, our Support Team is ready and waiting to help you finish what you started. We’d even be as bold as to say sign up for a free trial if you get stuck in a migration rut and need a hand to pull you out. We’re confident you’ll wonder how you ever coped without our awesome support team. Help! I Need to Migrate a WordPress Multisite: A Step-by-Step Guide. WordPress Multisite has been a highly beneficial addition. While you can’t use it for every new project, it’s highly valuable when all the right variables are in place. In the Ultimate Guide to WordPress Multisite, we talked about how to enable Multisite and create a network of sites from within a single installation of WordPress. If you’ve followed our recommendations, then you should have a fully functioning WordPress Multisite up and running. But what happens when someone changes their mind and wants to move their site out of the multisite network? Or what if you have a new idea for a site and you want to add it to the network’s umbrella of sites? Or perhaps you rebranded the Multisite network altogether and now need to get all these sites over to the new domain name. What do you do when you want to migrate a WordPress Multisite? In the following step-by-step guide, I’ll show you how to complete each of the three Multisite migration types. WordPress Multisite Migration Guide. You have a WordPress Multisite, but you realize something needs moving. There are three kinds of migration scenarios you might consider for a Multisite network: Migrating a single website into an existing WordPress Multisite network. Migrate a single website out of the WordPress Multisite network. Migrating the entire WordPress Multisite network from one domain to another. While you might be hesitant to move anything around within your network, there’s no need to be. Sure, the process will be a little more complicated than migrating a single site from one domain to another, but that’s expected. Follow along with the steps outlined in the three scenarios below and you’ll have your Multisite migrated in no time. Scenario #1: Migrate a Single Site into Multisite. In this scenario, you want to move a new website into your Multisite network. Awesome! Here’s what you need to do. Step 1 Back up both your single site installation and your Multisite network. You can do this with one of these WordPress backup plugins. Step 2 Next, deactivate all plugins on your single site WordPress installation. This is something WordPress suggests you do in case one of your plugins conflicts with the export process (which is a possibility). Go to Plugins. Select the bulk “Deactivate” option for all your plugins. Step 3 One other thing the Codex suggests is that you delete any quarantined spam comments. There’s no need to save and carry that data over with you as you will (and should) never use it. Step 4 Within your single site installation, go to Tools and click on Export . It is in here where you will export a copy of your site’s files for easier setup on the Multisite. Select the “All Content” radio dial button and click Download Export File . Save the XML file to your computer. Step 5 Log into your Multisite WordPress installation. From here, you must create a new empty site into which you can place the migrated site. Go to My Sites > Network Admin > Sites , and then click Add New . Fill in the following details for your new Multisite subdomain: Site Address (this will be the subdomain name on the network) Site Title (which can be the same as it was previously) Admin Email. If you have questions on how to configure this, check out this guide on how to activate and configure Multisite. Then click Add Site . Step 6 With the new site added, navigate to the new subdomain on the network. If you hover over “My Sites” in the top admin bar, you will see it there. The first thing to do is go to the site’s Settings and edit the title and description. If it needs to differ from what it was before, you can change that now. Also, be sure to review the blog and permalinks settings. Anything you want to maintain from the single site, you update it from here. Step 7 If the Multisite network does not use the same theme or plugins as the single site, you will need to set those up now. Note that not all WordPress plugins are compatible with Multisite, so be sure that any new plugins you carry over are acceptable to be on the network. To copy them over, you can do one of three things: You can use a premium plugin (I’ve included a list of those below) to copy and migrate your theme and plugins. You can reinstall all plugin and theme files from-scratch in Multisite (at least the ones that don’t already exist). You can copy the files from your wp-content folder on the single site’s server and into the corresponding Multisite’s folders for this subdomain. To do this, make sure you know the ID number for your new subdomain. If you’re unsure of what your new subdomain’s ID number is, go out to the Network dashboard. Click on My Sites. Hover over the new site you’ve created and click Edit . You’ll see the address bar something like this: The “id=14” will provide you with the site’s ID number, so you know which database to edit in your directory. Once your subdomain has all themes and plugins activated, configure and customize them to your liking. Step 8 Check the subdomain’s Pages, Posts, and Media for dummy content created during the new site setup on the network. If it created anything, delete everything before you import content from the old site. Step 9 To import the data from your single site, go to Tools and click on Import . Select the WordPress option from the list. (If you haven’t installed the tool yet, do it now). Upload your saved XML file here. You’ll next get a prompt about who you want to assign authorship to for your imported posts. You can either assign them to a current user on the network or a brand new one. Click on the “Download and Import Attachments” checkbox and save your changes. Step 10 If there were widgets from the single site you want to move into the subdomain, you can easily do this using a plugin called the Widget Importer & Exporter. Basically, it’s doing the same export/import process as you just did for your site’s content, only just for widgets. Follow the steps in the plugin and complete the export of your widget data. Step 11 Now, hop on over to the new subdomain on your Multisite network and give it a look. Does everything seem okay? Are all images in place? Is the primary navigation the correct one? Does it appear that all plugins are working? Are there any theme customizations missed in this transfer? Do the blog posts all have the correct author? And so on. Give your site a good checkup and make sure everything is as you expect. Step 12 If you decide that you want to give the subdomain a custom domain (perhaps the old one from its previous single existence), you can use domain mapping to do this. Step 13 With your site up and loaded on the network, you now need to get rid of the old WordPress site. If you will not use a custom domain on the Multisite and the migrated single site no longer needs its own hosting, delete the WordPress site and cancel your domain and hosting account. If you will use a custom domain on the Multisite, then you only need to delete the WordPress site and cancel the hosting account. Scenario #2: Migrate a Single Site out of Multisite. Here is what you need to do to complete the reverse process. Step 1 Back up your WordPress Multisite network. Step 2 Purchase a web hosting plan and domain name for your new WordPress site. (If you already purchased a custom domain for domain mapping, then you’ve already finished with the latter part). Step 3 Log into your new web hosting account and navigate the one-click WordPress install. From here, you can download and get started with WordPress for your new site. You can also grab a copy of WordPress from here: Step 4 The export and import of content for migrating out of Multisite is different, as you can only grab that data directly from your database tables. You can do this by logging into your Multisite’s control panel and navigating to phpMyAdmin. In the tables that appear under the Network’s folder, find the one that corresponds with the site you want to migrate out of the network. The ID number will match the one from the process described earlier. When you look at the list of sites on your network, click on the Edit button for the migrating site, and you’ll find the ID number appended to the end of the web address. The URL will be like this: https://networkname.com/wp-admin/network/site-info.php? id=14. Use the ID number to select all the tables pertaining to that site. Once you’ve selected all of them, click the Export button at the top. Step 5 The file that exported will be in a .sql format. Make a copy and rename it. You’ll now want to open it in a code editor like Atom to adjust your site’s domain (if you haven’t mapped it to the custom domain already). On the network, you’ll see the site referred to as: However, when you import this into the new site, you want it to say: Do a search and replace in the file and save your changes once you’ve updated all instances of the domain. Step 6 You must make one more change in this file. Remember that site ID from before? Well, it should not exist when in the database tables for a single WordPress installation. So, anywhere that you find “wp_[ID number]_”, replace it with “wp_”. Save the file once more. Step 7 Log into your new single WordPress installation. Because this site will no longer be part of a network of related sites, you’ll probably want to use your own WordPress theme and plugins here. So, go for it! Get those activated and customized before moving on to the next step. Step 8 Now, you can import the database tables from your old subdomain. To do this, log into this new website’s control panel and find your phpMyAdmin. WordPress will have automatically created several database tables for you upon installation. You don’t need those duplicates here as you’re about to carry your own over. Delete the following tables (all of them will have “wp_” at the beginning of their name): commentmeta comments links options postmeta posts terms term_relationships term_taxonomy. Once you’ve deleted the tables mentioned above, you can now click the Import button at the top. Select the newly saved .sql file and click on the Go button. Once you receive your successful upload message, you’re good to go. Step 9 If there were widgets from the Multisite network you wanted to copy over to the new domain, you can do so with the Widget Importer & Exporter plugin. Step 10 Take some time to poke around the Settings of your new WordPress site. Configure your site’s metadata and blog settings as you see fit. Step 11 Visit your new live website and do a full review of it to confirm that everything is as you want. Because you’re likely starting with a new theme and trying to create a unique experience from the Multisite, you may have already taken care of customization in the plugin and theme setup. But it’s still good to review and make sure everything is in its proper place. Step 12 When you’re content with your newly migrated site, you can return to your Multisite network and delete your website from the list of Sites on your Network’s dashboard. Scenario #3: Migrate WordPress Multisite to Another Domain. And finally, let’s talk about WordPress Multisite migration from one domain to another. It doesn’t require much in the way of installing new WordPress installations or configuring WordPress themes and plugins. Instead, this is about renaming all the backend files to reflect the new domain name of your network. Here is what you need to do: Step 1 The first thing you need to do: back up your Multisite installation. Step 2 If you haven’t done so already, buy that fancy new domain name for your network. Then associate it with the same web hosting account that your Multisite lives on. Step 3 Next, you must edit the wp-config.php file in the root directory of your site. You can access this either through your File Manager or FTP. Once you’ve located the file, click on the Edit button to open it. Now, when you configured WordPress for Multisite, you added some code above this line: /* That's all, stop editing! Happy blogging. */ The line you want to update in this case is this one: Update “yournetworkname.com” with the new domain name you want to use. You then need to add the following two lines of code above the “That’s all, stop editing!” message: Save your changes and exit. Step 4 The database files for your Multisite now also need to change to reflect the new domain name of the network. Log into phpMyAdmin. From here, you will search for your network’s database tables. Specifically, these are the ones that will require an update from the old domain name to the new one (these are all preceded by “wp_”): blogs > domain options > home options > siteurl site sitemeta > siteurl. In addition, you also need to update the following tables for each of the sites that exist on the network. The pound sign (#) below is where you will see the actual site ID number. #_options > siteurl #_options > home #_options > fileupload_url. Once you have renamed the domain in every instance in which it appears throughout your database tables, you can save your changes and close. Your site should now be fully migrated to the new domain name. Step 5 Don’t forget to change the name of your site and its web address within WordPress. If you want to do any rebranding and redesigning for this domain migration, you can do it now. Simplify Your Multisite Migration, Ahoy! There are many plugins you can use to streamline multisite migration, but there’s nothing better than using Shipper Pro to make your life easier. With Shipper Pro, you can move WordPress sites from one host to another, development to live, local to production, etc. You can migrate your entire multisite network securely with it to any location with a single click. Migrating WordPress sites has never been this simple! Ready, Set, Migrate. A WordPress Multisite network isn’t set in stone. You can shift the network and the within it as you see fit—and you can migrate WordPress multisite almost as easily as a single site migration. If you’re looking for expert help, our friendly live support team is ready to help you anytime with all your WordPress migration problems.