Can I use Snapshot to migrate subsite to single install?

I need to migrate a subsite (www.popquiz.com.br/casamento) to its own single WP install (www.marinaegiovanni.com.br). The manual process seems to be very long and risky. Can I use Snapshot to speed this up?

I found old (2012) support threads on this and in one it said that the migration functionality was added. But I did not understand if it fits my case (multisite subsite --> single site).

thank you,
Giovanni

  • Vaughan

    Hi @Giovanni,

    Hope you're well?

    Migrating a subsite to a single site install is certainly possible with Snapshot :slight_smile:

    You simply create a snapshot of the subsite & include all common files.

    Then you import this snapshot into the single site, it then tells you it's from a different site, but will change the domains to match your new site.

    You then restore the snapshot.

    Hope this helps

  • Giovanni

    Hi! It helped ... but the procedure did not work as expected. The posts, themes and plugins data are missing after the restore.

    Here is what I did.
    (1) I installed the Snapshot plugin in the source (www.popquiz.com.br/casamento) and destination (www.marinaegiovanni.com.br) sites.
    (2) I took a snapshot of the source subsite (www.popquiz.com.br) marking the options to include all tables (including the plugin and themes) and to include all media files.
    (3) I uploaded the snapshot via FTP to the destination single site.
    (4) I imported the snapshot; it showed up correctly.
    (5) I restored the snapshot. But the theme customization and media files are missing and I get these error messages below:
    "Warning: fopen(/index.php): failed to open stream: Permission denied in /home/content/p3pnexwpnas04_data02/26/2340426/html/wp-content/plugins/snapshot/lib/snapshot_utilities.php on line 1019

    Warning: fopen(/.htaccess): failed to open stream: Permission denied in /home/content/p3pnexwpnas04_data02/26/2340426/html/wp-content/plugins/snapshot/lib/snapshot_utilities.php on line 1026

    Warning: fopen(/CACHEDIR.TAG): failed to open stream: Permission denied in /home/content/p3pnexwpnas04_data02/26/2340426/html/wp-content/plugins/snapshot/lib/snapshot_utilities.php on line 1034"

    Did I do something wrong? Can you help?

    regards,
    Giovanni

  • Giovanni

    I started over again and still it does not work.

    (1) I reinstalled wordpress on the destination single site
    (2) I took a snapshot of the source subsite (www.popquiz.com.br) marking the options to include all tables (including the plugin and themes) and to include all media files.
    (3) I uploaded the snapshot via FTP to the destination single site.
    (4) I imported the snapshot; it showed up correctly.
    (5) I restored the snapshot. Now the media files are there in the new site; but the theme and plugins are not.

    Do plugins and themes have to be uploaded separately? before the snapshot restore?

    Please help ...

    best regards,
    Giovanni

  • Giovanni

    One thing I have noticed is that the options for exporting (snapshotting) the complete files/settings (plugins + themes + media + htaccess + wp-config) are only available when I choose to snapshot the main site. They do not appear when I choose to snapshot the specific blog (subsite) that I want to migrate.

    The attached pictures show the difference in the snapshot settings ...

    best regards,
    Giovanni

  • Giovanni

    It took several tries and I think I did it correctly from the beginning. It just seems it takes a while for everything to start showing up. Maybe the server has to reflect all the changes and it takes a while. Almost everything is working now.

    (1) Plugins OK! They are all there, including the Avada theme configurations, as they should be.
    (2) Themes OK!
    (3) Pages and Posts OK!
    (4) Media not OK. :slight_frown:

    The media files were included in the new site foders, but they are not in the wp-content/uploads folder; they are in the wp-content/uploads/blog.dir/blogid# folder. Therefore, no images are showing up in the new site. The NextGen Galleries also broke.

    I'm going to try again ...and I'll post here the new results.

  • Giovanni

    Hi! I didn't understand what you meant: did you reproduce yourself the procedure of migrating a multisite subsite to single site? And everything (plugins + themes + files + database) worked fine?

    From my side, I discovered a few thins while trying the migration procedure several times; it has not been easy and I do not recommend it to anyone because of the considerable amout of issues and reworks that arise.

    (1) Snapshotting the main multisite site allows you to save themes, plugins, database and media files. Snapshotting a multisite subsite only allows you to save database and media files; it does not allow you to save themes and plugins!

    (2) Just snapshotting the subsite and restoring it to a single site fresh WP installation is not enough, because the snapshot only saves the subsite tables (+ 2 global tables) and the media files. Therefore, before restoring, two manual procedures are needed: (a) copying the necessary plugins and (b) copying the necessary themes to the new installation. Then, and only then, should the snapshot be restored.

    (3) After restoring the snapshot, even though it restores the media files, it updates the database permalinks and places the media files into a blog.dir folder, not into the uploads folder. This generated a large amount of problems with images and galleries (NextGen broke). I had to update several permalinks, but this was not a problem, given that the site I was moving was small.

    The rework I had was considerably large, up to the point that I am considering avoiding in the future the most that I can any other experience of migrating a multisite subsite to single site install.

    In the end, I still do not know exactly how a migration like the ony I tried should be done with your Snapshot plugin. Do you guys have a step by step tutorial/article/post about the different kinds of migration procedures?
    (1) multisite main site --> single site
    (2) multisite subsite --> single site
    (3) multisite subsite --> multisite subsite
    (4) single site --> multisite subsite
    (5) single site --> single site
    ( ) etc...

    I think it would be very useful within the plugin's "usage section".

    For the subsite to single site migration, I believe a possible list of steps would be something like:
    1) set up new host with a fresh WordPress single installation
    2) download via FTP the subsite's necessary plugins and themes; upload them via FTP to the new site;
    3) install Snapshot plugin on subsite and snapshot it, including media files; (there is no way to include the themes and plugins for subsites, only for the main site)
    4) install Snapshot plugin on new single site; upload the snapshot via FTP, import it and restore it;
    5) by now, themes and plugins are okay; database will be working fine, but some adaptations during the migration will break all permalinks (e.g. for images in pages), because all media files are now in a blog.dir subfolder instead of the normal uploads folder; you have to edit all pages to manually fix one by one, you either do that or edit the database tables;

    best regards,
    Giovanni

  • Jack Kitterhing

    Hi there @Giovanni,

    Hope you're well today and thanks for your feedback and excellent suggestions! :slight_smile:

    The migration logic of snapshot is considered "beta" and is still being developed.

    For migrating a single site to a multisite or vice versa, you may want to check our guide on that here https://premium.wpmudev.org/blog/import-export-wordpress-sites-multisite/

    This uses WordPress's own export and import. I've also flagged the lead developer for feedback. :slight_smile:

    Thanks!

    Kind Regards
    Jack.

  • Rheinard

    Hi @Giovanni,

    As the feedback already suggests. Migration was not the primary intent of Snapshot, but regardless, it can be done (to some extent).

    Migrating from a Multisite to a Single site does pose a difficulty. You should be able to get the contents of the sub-site just fine, but the theme information will be within the main site (as you already found). Trying to create a snapshot of the main site, restoring it to the single site and then restoring the sub-site to that same single site will not give you exactly what you want (as you found too).

    This is because each restore is an attempt to replace the whole site. There will be files overridden. But, at least the themes and plugins from the main site will be there ready for the second restore to use. Users may also pose a problem with this migration. Its far easier going from single site to multisite.

    Your blog.dir/blogid issue is an interesting one. It means that your site has been going for some time, pre WordPress 3.5. This is a classic structure of WordPress. This I will flag as a bug as it will create problems when restoring snapshots created pre-WP3.5 to sites that did not upgrade from previous versions of WordPress.

    We will certainly work on improving Snapshot and migration is definitely something that comes up quite a bit.

    Thank you too for the suggestions. As Snapshot is moving forward we would like to incorporate the instructions straight into the UI, saving you from having to look for help elsewhere. So to that effect, I'll add these guides as a feature request for the plugin.

    Cheers,
    Rheinard

Thank NAME, for their help.

Let NAME know exactly why they deserved these points.

Gift a custom amount of points.