MagicWP Backup Restore and Migration

Mô tả

MagicWP Backup is a full backup, restore, and migration engine for WordPress, built for large sites and low-resource hosting.

  • Chunked, resumable backups (database + files) that fit shared-hosting time and memory limits.
  • Safe restore with integrity checks, a destructive-action confirmation, automatic table-prefix remapping, and serialized-safe URL search/replace.
  • One-click site-to-site migration with hashed transfer tokens.
  • Configurable exclusions (quick toggles + file-size limit), scheduled cleanup, and a structured log viewer with export.
  • Caching plugins, their cache files, and the object-cache.php / advanced-cache.php drop-ins are left out of every backup and restore, so a site never inherits a cache backend it does not have.
  • PSR-4 architecture (Composer-free), REST API at /wp-json/magicwp-backup-restore-migration/v1/ with capability + nonce protection.

Ảnh màn hình

Cài đặt

  1. Upload the magicwp-backup-restore-migration folder to /wp-content/plugins/.
  2. Activate the plugin through the Plugins menu in WordPress.
  3. Open MagicWP Backup in the admin sidebar and run the system self-test.

Đánh giá

Không có đánh giá nào cho plugin này.

Người đóng góp & Lập trình viên

“MagicWP Backup Restore and Migration” là mã nguồn mở. Những người sau đã đóng góp vào plugin này.

Những người đóng góp

Nhật ký thay đổi

1.3.0

  • Fixed: links inside serialized objects (Elementor data, theme settings, widget options) kept pointing at the old site after a move.
  • Fixed: restored sites missing posts, pages, users or whole plugin tables (for example WPForms) while the restore said it had finished. Database errors during a restore are now reported instead of ignored.
  • Fixed: every “%” in the database turned into a long random code after a restore, which broke permalinks (pages returning 404), Elementor widths and spacing, theme CSS and encoded links. Backups made with 1.2.0 are repaired automatically when you restore them with this version.
  • Fixed: theme settings and other saved options that contain links getting corrupted when the site moved to an address of a different length.
  • Fixed: links pointing to the old site after moving to an address with a port number, and look-alike addresses (example.com.au when moving example.com) being changed by mistake.
  • Fixed: restores that took more than one step logging you out half way and stopping, leaving the site partly restored. The database is now prepared on the side and switched over in one go at the end; if anything fails before that, your site’s database is left exactly as it was and you are told so.
  • Fixed: restores timing out on hosts with a 30 or 60 second time limit.
  • Fixed: Elementor pages showing old styles or images after moving to a new domain (Elementor’s CSS is now regenerated after a restore).
  • Fixed: restoring a WooCommerce site onto a site that already has WooCommerce failing on database keys.
  • Fixed: other plugins showing “mkdir(): Permission denied” warnings on every page after moving to a server where WordPress is in a different folder (for example Backup Migration). Server folder paths saved in the database are now updated during a restore, like the site address.
  • New: other backup plugins’ backup folders (Backup Migration, UpdraftPlus, All-in-One WP Migration, Duplicator, WPvivid, BackWPup and more) are left out of backups and restores by default, so archives no longer contain backups of backups. You can switch this off under Settings Exclusions.
  • Fixed: restoring onto a site with a different table prefix renamed database columns and indexes whose names start with that prefix.
  • Fixed: very large database rows (several MB) making a restore slow enough to time out.
  • Fixed: restoring an older backup could replace the running copy of this plugin with an older version.
  • Fixed: large backups (over about 100 MB per file) could not be downloaded because the server ran out of memory.
  • Fixed: only the manifest could be downloaded from the Backups list. Every backup file now has a download link.
  • Fixed: uploading a backup on the Restore page failed on most hosts, and the page stayed on “Uploading…”. Files are now uploaded in small pieces that fit your host’s upload limit, and real errors are shown.
  • Fixed: running out of disk space during a restore now stops with a clear message instead of leaving cut-off files.
  • New: if a restore is interrupted (tab closed, connection lost), the Restore page tells you what was and was not changed and lets you resume or discard it.
  • New: backups made by a newer, incompatible version of the plugin are refused with a clear message before anything is changed.
  • Changed: restoring into a single site of a multisite network is now refused with a message; it used to change user roles across the whole network.
  • Changed: a restore can only run in one browser tab at a time; a second tab waits instead of running the same step twice.
  • Security: a site-to-site transfer token now stops working on the source site as soon as the transfer finishes (it used to stay valid for 24 hours).
  • Security: restoring no longer copies the source site’s backup folder key, job list and transfer tokens onto the destination site.
  • Improved: only the latest pre-restore safety snapshot of the database is kept, instead of every snapshot being added to one ever-growing file.
  • Compatibility: tested with WordPress 7.1 and PHP 8.4.

1.2.0

  • Compatibility: tested with WordPress 7.1.
  • New: caching plugins, their generated cache files, and the object-cache.php, advanced-cache.php and wp-cache-config.php drop-ins are excluded from backups, and skipped on restore so older archives are safe too. Restoring a Redis-backed site onto a host without Redis (or the reverse) no longer breaks the site.
  • New: magicwp_backup_cache_exclusions filter to change that list, or empty it to back caches up as before.

1.1.0

  • New: automatic scheduled backups (daily or weekly), run unattended via WP-Cron.
  • New: email notifications on backup success and failure (optional).
  • New: retention “keep newest N backups” option, alongside the delete-by-age rule.

1.0.0

  • Initial public release.
  • Backups: chunked, resumable streaming archive of database and files, sized to fit shared-hosting time and memory limits.
  • Restore: integrity validation, confirm-gated destructive restore, automatic table-prefix remapping, and serialized-safe URL search/replace (keeps the destination wp-config.php).
  • Migration: one-click site-to-site transfer with hashed transfer tokens and a token-gated download endpoint.
  • Exclusions: quick toggles (Plugins, Themes, Uploads, Must-use plugins, Cache) plus an “exclude files larger than (MB)” limit.
  • Maintenance: scheduled cleanup cron, structured log viewer with export, and a system self-test.
  • Architecture: PSR-4 (Composer-free), REST API at /wp-json/magicwp-backup-restore-migration/v1/ with capability + nonce protection.