Finding your next read
Practical craft for people building for the web.
Explore DevelopmentFinding your next read
THE FINDERPRESS TOOL DIRECTORY
Explore this tool and check the official listing for its latest features and requirements.
01 / SOURCE DETAILS
ZHBackup is a WordPress backup plugin for full-site backup, restore, and migration. Use it to back up a WordPress site, restore a backup onto the same install, clone a site to staging, or migrate WordPress to a new domain — without a license key. It packages your database, media, plugins, themes, selected wp-content folders, root files, and optional custom root folders, then restores them through a chunked process designed to avoid request timeouts. The database is stored as a structured package instead of one large SQL replay file, so large page-builder data, post meta, options, and other oversized values can be restored in smaller, traceable steps. Live activity logs show the progress of exports, imports, database rows, large values, file restore, validation, and cleanup. After a restore, ZHBackup lets you review the site first and run stale-file cleanup separately from the restore process. This keeps restore completion predictable while still giving you a controlled way to remove old plugins, uploads, themes, and selected root-folder files that are not present in the backup. Key Features: Full-Site WordPress Backup — Back up the database, uploads, plugins, themes, mu-plugins, selected wp-content folders, root files, and optional custom root folders. Structured Database Package — Export database schemas, row chunks, and large values separately for reliable restores of Elementor/page-builder data and other large rows. Chunked Export and Restore — Process database and file operations in small AJAX steps to reduce timeout and memory-limit issues. Browser Upload or Server Restore — Upload backups through the browser in resumable chunks, or place backups on the server via FTP/SFTP and restore from a table of available files. Flexible Archive Formats — Create standard .zip backups or optimized .zhbackup archives. Live Activity Logs — Follow professional export/import logs with database checkpoints, row counts, large-value restore events, file progress, validation, and cleanup status. Post-Restore Cleanup — Save a cleanup plan after restore and run stale-file cleanup manually after reviewing the restored site. Scheduled Backups — Automatic daily or weekly full-site backups via WP-Cron, processed in small resumable bursts. Serialized-Safe Find & Replace — Update URLs safely across serialized PHP data, JSON-escaped URLs, and Elementor widget data — chunked, resumable, with a dry-run preview mode. Secure Backup Storage — Store backups outside the webroot when available. Inside-webroot fallbacks use an unguessable folder and filename, plus .htaccess , web.config , and index.php protections. Retention Policies — Automatically clean up older backups by count or age using WP-Cron. Only backups the plugin created are ever deleted; uploaded archives are never touched. No Required Account — Use all backup, restore, migration, and cleanup features without a license key or forced signup. WordPress.org Compliant: No obfuscated or encoded PHP Proper sanitization for all inputs Escaped outputs throughout Nonces for all form submissions Capability checks on every action No hidden external API calls No telemetry without explicit consent External services ZHBackup includes an optional newsletter signup form on the plugin Settings page. This feature connects to an external service hosted by Hassan Zain at hassanzain.com . It is used only to add the submitted email address to the ZHBackup newsletter or product updates list. Data is sent only when an administrator manually submits the optional signup form. The plugin does not contact this service during normal backup, restore, migration, import, export, or find-and-replace usage. When the form is submitted, the plugin sends: Email address entered in the signup form Site URL ( home_url() ) Plugin slug ( zhbackup ) Plugin version Terms of service: https://hassanzain.com/terms-and-conditions Privacy policy: https://hassanzain.com/privacy-policy Privacy ZHBackup does not send telemetry or usage analytics during normal backup, restore, migration, import, export, or find-and-replace operations. The only optional external data transfer is the administrator-initiated newsletter signup described above.
02 / SOURCE DETAILS
Upload the zhbackup folder to wp-content/plugins/ . Activate the plugin through the Plugins menu in WordPress. Navigate to ZHBackup in the admin sidebar to start creating backups. Alternatively: Go to Plugins → Add New in your WordPress admin. Search for “ZHBackup” or “WordPress backup plugin”. Click Install Now , then Activate .
03 / SOURCE DETAILS
Is ZHBackup a WordPress backup plugin? Yes. ZHBackup is a free WordPress backup, restore, and migration plugin. It creates a full-site backup (database plus files), restores that backup on the same site or another install, and can clone or migrate WordPress to a new domain. Can I clone or migrate a WordPress site with this backup plugin? Yes. Create a backup on the source site, restore it on the destination, then use the built-in Find & Replace tool to update URLs. Serialized PHP data, JSON, and Elementor widget data are handled safely. Does this plugin work on shared or managed hosting? Yes. ZHBackup uses chunked export, upload, import, and restore steps so each request stays small. The database is also restored table-by-table from a structured package instead of replaying one large SQL file. How large of a site can this handle? There is no fixed size limit in the plugin. Very large sites depend on available disk space, PHP limits, and database performance, but ZHBackup is designed to process large file sets and databases in small resumable steps. How does ZHBackup handle large Elementor or page-builder data? Large database values are stored separately from normal row chunks and restored in smaller append operations. This helps preserve large _elementor_data , post meta, options, and other oversized rows during restore. What is the difference between `.zip` and `.zhbackup`? Both formats can contain the same backup data. .zip is a standard archive format. .zhbackup is ZHBackup’s optimized archive format for this plugin. Both support the structured database package. Can I restore a backup uploaded by FTP or File Manager? Yes. Upload a .zip or .zhbackup file to the backup storage directory shown on the Import screen. It will appear in the server backup table, where you can restore it directly. Where are backups stored? The plugin automatically selects the most secure location. It prefers a directory outside the webroot (not accessible via browser), using a site-unique folder name so production and staging installs on the same account do not share backups. If that is not possible it falls back to a randomly named folder inside wp-content (not a guessable zhbackup-backups path). Apache/IIS deny rules are written when storage is inside the site. Existing backups from older folders remain listed, downloadable, and restorable — they are not moved or deleted. Can I include custom folders from the WordPress root? Yes. The export screen can include optional first-level folders from the WordPress root. WordPress core folders such as wp-admin , wp-includes , and wp-content are handled separately or excluded automatically. Can I import a backup from a different domain? Yes. After importing, use the built-in Find & Replace tool to update old URLs to your new domain. It handles serialized data safely, including Elementor widget data. Does ZHBackup support multisite? No. Multisite networks are not currently supported. Restoring a multisite backup into a single site (or the reverse) is detected and refused, because it would leave the installation in an inconsistent state. What is post-restore cleanup? Restore copies files from the backup first. If older files or folders still exist on the destination site, ZHBackup saves a cleanup plan. After you verify the restored site, go to ZHBackup → Cleanup to remove stale files that are not present in the backup. Will cleanup fail the restore if file permissions block deletion? No. Cleanup is manual and best-effort. Permission-related deletion failures are logged as warnings so the restore can remain complete and you can review any paths that need manual attention. Is the email signup required? No. The email signup on the Settings page is completely optional and can be dismissed permanently. The plugin is fully functional without it. Is the `.zhbackup` format free to use? Yes. The .zhbackup export format is included for free and does not require any license key or activation page. Does this plugin make external API calls? Yes, but only for the optional newsletter signup on the Settings page after an administrator explicitly enters an email address and submits the form. No data is sent anywhere during backup, restore, migration, import, export, or find-and-replace operations. Will importing overwrite my existing site? Yes. Importing a backup restores the backed-up database and files over the current site. Always create a fresh backup of the current site before importing.
KEEP EXPLORING