{"id":386746,"date":"2026-10-15T13:59:52","date_gmt":"2026-10-15T13:59:52","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/restora\/"},"modified":"2026-10-15T13:59:24","modified_gmt":"2026-10-15T13:59:24","slug":"restora","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/restora\/","author":17359158,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.1.3","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Restora","header_author":"Perforks","header_description":"Backups that finish on any hosting and restores you can trust: the whole site in one zip or in separate parts, schedules, and restore from the admin with a safety backup first.","assets_banners_color":"3d89b1","last_updated":"2026-10-15 13:59:24","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/perforks.com\/restora","header_author_uri":"https:\/\/perforks.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":25,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"jbosnakis","date":"2026-10-15 13:59:24","revision":3748645}},"upgrade_notice":{"1.0.0":"<p>First release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3748645,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3748645,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3748645,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3748645,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3748645,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3748645,"resolution":"1","location":"assets","locale":"","width":1440,"height":900}},"screenshots":{"1":"The Restora screen: make a full or partial backup, restore or download the ones you have, and set the schedule."}},"plugin_section":[],"plugin_tags":[151,10718,286952,152,265189],"plugin_category":[59],"plugin_contributors":[286953],"plugin_business_model":[],"class_list":["post-386746","plugin","type-plugin","status-publish","hentry","plugin_tags-backup","plugin_tags-database-backup","plugin_tags-full-site-backup","plugin_tags-restore","plugin_tags-scheduled-backup","plugin_category-utilities-and-tools","plugin_contributors-jbosnakis","plugin_committers-jbosnakis"],"banners":{"banner":"https:\/\/ps.w.org\/restora\/assets\/banner-772x250.png?rev=3748645","banner_2x":"https:\/\/ps.w.org\/restora\/assets\/banner-1544x500.png?rev=3748645","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/restora\/assets\/icon.svg?rev=3748645","icon":"https:\/\/ps.w.org\/restora\/assets\/icon.svg?rev=3748645","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/restora\/assets\/screenshot-1.png?rev=3748645","caption":"The Restora screen: make a full or partial backup, restore or download the ones you have, and set the schedule."}],"raw_content":"<!--section=description-->\n<p>Restora backs up a WordPress site into one standard zip file: every file in the WordPress folder plus a dump of the database.<\/p>\n\n<ul>\n<li><strong>Full site, or separate files.<\/strong> One zip with everything, or pick the parts (database, plugins, themes, media uploads, WordPress and other files) and get each as its own file, with \"Download all\" or one by one.<\/li>\n<li><strong>Made for limited hosting.<\/strong> The backup runs in short slices and continues where it stopped, even in the middle of a large file, so PHP time limits do not break it.<\/li>\n<li><strong>Restore from the admin.<\/strong> The archive is checked from start to finish first, the database is swapped in one atomic step, and a safety backup of the current site is taken beforehand.<\/li>\n<li><strong>Schedules.<\/strong> Daily, weekly or monthly backups of the whole site and of the database, keeping only the newest ones.<\/li>\n<li><strong>Standard format.<\/strong> The archive is a normal zip you can open anywhere; the database is plain SQL inside <code>.restora\/<\/code>.<\/li>\n<li><strong>Closed to the web.<\/strong> Backups live in a randomly named folder and can only be downloaded by an administrator through WordPress.<\/li>\n<\/ul>\n\n<h4>Why another backup plugin?<\/h4>\n\n<p>Because the hard part of a backup is getting it back, and that is where Restora spends its effort.<\/p>\n\n<ul>\n<li><strong>It finishes on limited hosting.<\/strong> Restora writes one zip and can pause and resume in the middle of any file, so a short PHP time limit on shared hosting is enough for a site of any size, without changing any server settings.<\/li>\n<li><strong>The restore is checked before it touches anything.<\/strong> Every file in the archive is verified first, the database is loaded into temporary tables and swapped in one step, and <code>wp-config.php<\/code> is never overwritten.<\/li>\n<li><strong>Nothing is locked.<\/strong> Every feature described here works fully in this plugin, with no account and no service of ours in between. Your backups stay on your server.<\/li>\n<\/ul>\n\n<h4>Restora Pro<\/h4>\n\n<p>Restora Pro is a separate, paid add-on for those who need more: copies on SFTP and S3-compatible storage, an emergency recovery page that restores the site when WordPress itself is broken, moving the site to another server with one installer, AES-256 encrypted backups (locked with a key pair, so the site itself never holds the key), and one screen to watch and back up all your sites. This plugin does not need it and never asks for it beyond a single card on its screen.<\/p>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>PHP 7.4 or newer, 64-bit, with the zip, zlib and pdo_mysql extensions (present on almost every host).<\/li>\n<li>MySQL or MariaDB.<\/li>\n<li>Single sites. Multisite networks are not supported yet.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>Restora contacts no external service. The only requests it makes are to your own site, so that a backup can keep itself going in short slices.<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>A backup is a copy of your site, so it contains whatever personal data your site holds (user accounts, comments, orders and so on). It is stored in your own <code>wp-content<\/code> folder. Restora collects nothing about you or your visitors and sends nothing to its author. Keep downloaded backups somewhere safe.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin and activate it.<\/li>\n<li>Open <strong>Restora<\/strong> in the admin menu and press <strong>Create backup<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20are%20the%20backups%20stored%3F\"><h3>Where are the backups stored?<\/h3><\/dt>\n<dd><p>In <code>wp-content\/restora-&lt;random key&gt;\/<\/code>. Its name cannot be guessed, and on Apache and IIS the files Restora puts in it deny web access. nginx ignores those files: Restora checks once a day whether the folder can be reached from the web and, if it can, shows the line to add to the nginx configuration.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20my%20backups%20if%20i%20delete%20the%20plugin%3F\"><h3>What happens to my backups if I delete the plugin?<\/h3><\/dt>\n<dd><p>They stay where they are. Install Restora again and it finds them.<\/p><\/dd>\n<dt id=\"what%20is%20left%20out%20of%20a%20backup%3F\"><h3>What is left out of a backup?<\/h3><\/dt>\n<dd><p>Cache folders, WordPress upgrade leftovers and the backup folders of other backup plugins. You can add your own paths and patterns in the settings; developers can also use the <code>restora_exclude<\/code> filter.<\/p>\n\n<p>From the database, the tables of the site are backed up: WordPress's own, plus any other tables you choose in the settings. Views, triggers, stored procedures and events are not; WordPress does not use them, but some custom code does.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20a%20restore%20stops%20halfway%3F\"><h3>What happens if a restore stops halfway?<\/h3><\/dt>\n<dd><p>It is undone. Before a file is replaced, its current version is set aside, and the database is only switched over at the very end. If the restore cannot finish (the disk fills up, a folder cannot be written, the window is closed), every file goes back to how it was and the database is left untouched. Before anything is written, Restora also checks that the folders are writable and that there is enough free space.<\/p><\/dd>\n<dt id=\"do%20scheduled%20backups%20need%20a%20real%20cron%20job%3F\"><h3>Do scheduled backups need a real cron job?<\/h3><\/dt>\n<dd><p>No. They start through WP-Cron and then keep themselves going. On a site with very few visits they may start late; a server cron job calling <code>wp-cron.php<\/code> makes the timing exact.<\/p><\/dd>\n<dt id=\"does%20restora%20create%20files%20outside%20its%20own%20folders%3F\"><h3>Does Restora create files outside its own folders?<\/h3><\/dt>\n<dd><p>No. Everything it writes stays in its own randomly named folder in <code>wp-content<\/code>. While a restore runs, its settings file waits there too (readable by the site only, and without the database credentials, which are read from <code>wp-config.php<\/code>) and is removed when the restore ends.<\/p><\/dd>\n<dt id=\"can%20it%20restore%20an%20encrypted%20backup%3F\"><h3>Can it restore an encrypted backup?<\/h3><\/dt>\n<dd><p>Yes. Backups encrypted by Restora Pro can be restored here with their password, even without Pro. A lost password cannot be recovered: that is what the encryption is for.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20multisite%3F\"><h3>Does it work with multisite?<\/h3><\/dt>\n<dd><p>Not yet. Restora is built and tested for single WordPress sites.<\/p><\/dd>\n<dt id=\"does%20a%20restore%20delete%20files%3F\"><h3>Does a restore delete files?<\/h3><\/dt>\n<dd><p>No. Files that exist on the site but not in the backup are left in place, and <code>wp-config.php<\/code> is never overwritten.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release: resumable backups of the full site or of separate parts, restore with a safety backup, schedules and retention.<\/li>\n<\/ul>","raw_excerpt":"Backups that finish on any hosting, and restores you can trust: the whole site in one zip or in separate parts.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/386746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=386746"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/jbosnakis"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=386746"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=386746"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=386746"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=386746"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=386746"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=386746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}