{"id":353611,"date":"2026-08-21T12:34:48","date_gmt":"2026-08-21T12:34:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/dadsfam-backups\/"},"modified":"2026-09-01T20:45:28","modified_gmt":"2026-09-01T20:45:28","slug":"dadsfam-backups","status":"publish","type":"plugin","link":"https:\/\/cs.wordpress.org\/plugins\/dadsfam-backups\/","author":23486748,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.11.0","stable_tag":"1.11.0","tested":"7.1","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"DadsFam Backups","header_author":"DadsFam","header_description":"Reliable, resumable backups for your WordPress site \u2014 full database + files, scheduled or on-demand, with one-click restore. The honest freemium backup plugin.","assets_banners_color":"e6eef8","last_updated":"2026-09-01 20:45:28","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/plugins.dadsfam.co.za\/","header_author_uri":"https:\/\/www.dadsfam.co.za\/","rating":0,"author_block_rating":0,"active_installs":10,"downloads":320,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.10.0":{"tag":"1.10.0","author":"dadsfam","date":"2026-08-31 18:51:09","revision":3674818},"1.10.1":{"tag":"1.10.1","author":"dadsfam","date":"2026-08-31 19:01:48","revision":3674828},"1.10.3":{"tag":"1.10.3","author":"dadsfam","date":"2026-09-01 07:33:36","revision":3675544},"1.10.4":{"tag":"1.10.4","author":"dadsfam","date":"2026-09-01 07:59:57","revision":3675596},"1.10.5":{"tag":"1.10.5","author":"dadsfam","date":"2026-09-01 09:02:45","revision":3675723},"1.10.6":{"tag":"1.10.6","author":"dadsfam","date":"2026-09-01 09:19:21","revision":3675755},"1.10.7":{"tag":"1.10.7","author":"dadsfam","date":"2026-09-01 16:51:17","revision":3676525},"1.10.8":{"tag":"1.10.8","author":"dadsfam","date":"2026-09-01 17:07:34","revision":3676556},"1.11.0":{"tag":"1.11.0","author":"dadsfam","date":"2026-09-01 20:45:28","revision":3676825},"1.7.0":{"tag":"1.7.0","author":"dadsfam","date":"2026-08-31 11:28:22","revision":3673985},"1.8.0":{"tag":"1.8.0","author":"dadsfam","date":"2026-08-21 12:34:32","revision":3658991},"1.8.1":{"tag":"1.8.1","author":"dadsfam","date":"2026-08-21 20:22:52","revision":3659613},"1.8.2":{"tag":"1.8.2","author":"dadsfam","date":"2026-08-21 20:40:03","revision":3659627},"1.8.3":{"tag":"1.8.3","author":"dadsfam","date":"2026-08-31 14:32:25","revision":3674445},"1.9.0":{"tag":"1.9.0","author":"dadsfam","date":"2026-08-31 17:05:47","revision":3674673}},"upgrade_notice":{"1.11.0":"<p>Restoring now lets you choose whether to rewrite the old site&#039;s web address in the database. It stays ticked by default, so restores and clones behave exactly as before unless you say otherwise.<\/p>","1.10.8":"<p>Makes the uploader adapt its piece size to your connection, shows speed and time remaining while it runs, and hardens resumed uploads against a piece landing in the wrong place.<\/p>","1.10.7":"<p>Important if you use encrypted off-site backups. Uploading a .zip.enc file was refused outright \u2014 it now imports and unlocks automatically. Also fixes housekeeping never running on sites with off-site storage switched off.<\/p>","1.10.6":"<p>The dashboard now catches up on its own when a backup and its off-site upload have finished, instead of waiting for you to reload the page. Recommended for everyone on 1.10.5.<\/p>","1.10.5":"<p>Important if you send backups off-site. Fixes the dashboard telling you your site was not backed up when in fact everything was safely in your cloud storage, brings back the upload progress bar, and makes Back Up Now visibly do something without a page reload.<\/p>","1.10.4":"<p>Screenshots on the plugin page. No code changed since 1.10.3 \u2014 nothing to do if you are already on it.<\/p>","1.10.3":"<p>The live activity console is now part of the free plugin, where it always belonged. Plus a rebuilt Dashboard: a guided three-step setup, big pressable tiles, a plain-English recovery plan for when things go wrong, and one sentence telling you whether your site is safe. Also fixes it ignoring your off-site backups \u2014 it read &quot;0 backups stored&quot; even with copies safely in Google Drive or OneDrive. The figures now count everything you have, wherever it is kept, and a new panel shows where each backup lives. Adds a Support tab. Pro users should update to 1.6.2 as well.<\/p>","1.10.1":"<p>Paperwork only \u2014 nothing behaves differently. Documents why the off-site code needs direct network and file access, and fixes two dead links in the readme.<\/p>","1.10.0":"<p>Adds thirteen more AI abilities, so an assistant connected through an MCP plugin can handle almost the whole plugin for you \u2014 schedules, storage, off-site destinations, download links and housekeeping. Restoring is still yours alone, and the destructive actions confirm first.<\/p>","1.9.0":"<p>Off-site backups are now free: connect Google Drive or OneDrive in one click, and pull a backup back down from the cloud when you need it. Pro users \u2014 your existing Drive and OneDrive connections carry across untouched; update Pro to 1.6.0 alongside this.<\/p>","1.8.3":"<p>Please update. An older build (1.7.0) was published by mistake and would roll your site back several releases. 1.8.3 is the current, correct code \u2014 updating puts you back on the right version. Your backups and settings are unaffected.<\/p>","1.7.0":"<p>Adds AI assistant support via the WordPress Abilities API (WP 6.9+): connect Claude or ChatGPT through an MCP plugin like WPVibe to check status and health, list and verify backups, start one, and manage the schedule. Admin-only, and restore is not exposed to assistants. Backups themselves are unchanged.<\/p>","1.2.10":"<p>CRITICAL: fixes backups duplicating files and growing forever on strict hosts. Update immediately, force-stop any running backup, then back up fresh.<\/p>","1.2.9":"<p>Final hardening: fingerprinting can no longer stall a backup under any circumstances \u2014 worst case it is skipped and the backup completes. Strongly recommended.<\/p>","1.2.8":"<p>Stops the backup archiving entire nested subdomain\/addon-domain WordPress sites inside this site&#039;s folder. Backups return to their normal size and speed.<\/p>","1.2.7":"<p>CRITICAL fix over 1.2.6: stops backups double-archiving and growing forever. Update immediately, force-stop any running backup, then back up fresh.<\/p>","1.2.6":"<p>Important: backups now keep running even with the dashboard closed or the browser tab in the background \u2014 any site traffic advances them automatically.<\/p>","1.2.5":"<p>Fixes big backups getting stuck forever at the fingerprinting step on hosts with strict request limits \u2014 the finalise is now fully resumable with live progress.<\/p>","1.2.4":"<p>Large backups no longer look frozen at the end \u2014 the finalise steps (database fold-in, verify, fingerprint) now report live progress.<\/p>","1.2.3":"<p>Improves the completion email so Pro can hide a download link that would break when the local copy is auto-deleted after off-site upload. Pairs with Pro 1.3.5.<\/p>","1.2.2":"<p>Moves the Pro off-site upload panel\/progress bar to sit directly under the backup card. Install alongside DadsFam Backups Pro 1.2.2.<\/p>","1.2.1":"<p>Fixes the file-archiving counter showing more than 100% on active sites. Cosmetic but recommended.<\/p>","1.2.0":"<p>The dashboard now shows the Pro advanced schedule correctly (no more misleading &quot;Off&quot;) and hosts the new Pro Off-site backups panel. Install together with DadsFam Backups Pro 1.1.0 if you run Pro.<\/p>","1.1.0":"<p>Feature release: backup verification with checksums, WP-CLI commands (wp dfb backup \/ list \/ verify), a send-test-email button, and a dashboard health widget. Recommended for all sites.<\/p>","1.0.15":"<p>New: your activity log now records download activity \u2014 who downloaded a backup, whether via the email link or the dashboard, and when links are used or expire.<\/p>","1.0.14":"<p>Fixes backup-email download links that could show &quot;expired&quot; on the first click. Recommended if you use the email download link.<\/p>","1.0.13":"<p>New: polished HTML backup emails with an optional secure download link that expires automatically (24 hours by default). Set it up under Settings \u2192 Email notifications.<\/p>","1.0.12":"<p>Important fix for sites that use emoji or non-Latin text: restores now preserve those characters exactly. Also fixes a leftover flag that could block backups after a restore. Recommended for everyone.<\/p>","1.0.0":"<p>First release of DadsFam Backups.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3659613,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3659613,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3659613,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3659613,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.10.0","1.10.1","1.10.3","1.10.4","1.10.5","1.10.6","1.10.7","1.10.8","1.11.0","1.7.0","1.8.0","1.8.1","1.8.2","1.8.3","1.9.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3675596,"resolution":"1","location":"assets","locale":"","width":1280,"height":960},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3675596,"resolution":"2","location":"assets","locale":"","width":1280,"height":960},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3675596,"resolution":"3","location":"assets","locale":"","width":1280,"height":960},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3675596,"resolution":"4","location":"assets","locale":"","width":1280,"height":960},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3675596,"resolution":"5","location":"assets","locale":"","width":1280,"height":960},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3675596,"resolution":"6","location":"assets","locale":"","width":1280,"height":960}},"screenshots":{"1":"Open it and you know where you stand. One sentence tells you whether your site is covered, when the last backup ran and where it is being kept \u2014 no numbers to interpret, no jargon.","2":"It walks you through setting up. Three steps to a properly covered site, ticking themselves off as you go, and the panel disappears for good once you are done.","3":"Everything the plugin does, as six things you press. Big targets and plain names \u2014 \"Put my site back\", not \"Restore\" \u2014 each showing its own live status.","4":"Watch it work, line by line. A live window onto what the server is actually doing: tables dumped, files added, bytes uploaded. Free, not an add-on.","5":"When something goes wrong, it tells you what to do. Four things that actually happen \u2014 a broken update, a hack, hosting that vanished, something deleted by mistake \u2014 each with the exact steps.","6":"Google Drive and OneDrive built in and free. One click to connect, every backup gets a second home, and you can pull one straight back down even if the original server is gone."}},"plugin_section":[262246],"plugin_tags":[151,10718,4155,152,265189],"plugin_category":[59],"plugin_contributors":[274194],"plugin_business_model":[],"class_list":["post-353611","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-backup","plugin_tags-database-backup","plugin_tags-migration","plugin_tags-restore","plugin_tags-scheduled-backup","plugin_category-utilities-and-tools","plugin_contributors-dadsfam","plugin_committers-dadsfam"],"banners":{"banner":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/banner-772x250.png?rev=3659613","banner_2x":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/banner-1544x500.png?rev=3659613","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/icon-128x128.png?rev=3659613","icon_2x":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/icon-256x256.png?rev=3659613","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/screenshot-1.png?rev=3675596","caption":"Open it and you know where you stand. One sentence tells you whether your site is covered, when the last backup ran and where it is being kept \u2014 no numbers to interpret, no jargon."},{"src":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/screenshot-2.png?rev=3675596","caption":"It walks you through setting up. Three steps to a properly covered site, ticking themselves off as you go, and the panel disappears for good once you are done."},{"src":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/screenshot-3.png?rev=3675596","caption":"Everything the plugin does, as six things you press. Big targets and plain names \u2014 \"Put my site back\", not \"Restore\" \u2014 each showing its own live status."},{"src":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/screenshot-4.png?rev=3675596","caption":"Watch it work, line by line. A live window onto what the server is actually doing: tables dumped, files added, bytes uploaded. Free, not an add-on."},{"src":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/screenshot-5.png?rev=3675596","caption":"When something goes wrong, it tells you what to do. Four things that actually happen \u2014 a broken update, a hack, hosting that vanished, something deleted by mistake \u2014 each with the exact steps."},{"src":"https:\/\/ps.w.org\/dadsfam-backups\/assets\/screenshot-6.png?rev=3675596","caption":"Google Drive and OneDrive built in and free. One click to connect, every backup gets a second home, and you can pull one straight back down even if the original server is gone."}],"raw_content":"<!--section=description-->\n<p><strong>DadsFam Backups<\/strong> keeps a safety net under your WordPress site. Back up your database and files whenever you like, or set a schedule and forget about it. When something goes wrong, restore in a few clicks.<\/p>\n\n<p>It's built for real-world hosting. Big sites usually choke other backup plugins because PHP runs out of time or memory halfway through. DadsFam Backups works in small, resumable steps instead \u2014 so a backup that's too big to finish in one go simply picks up where it left off until it's done.<\/p>\n\n<h4>What you get (free)<\/h4>\n\n<ul>\n<li><strong>Full backups<\/strong> \u2014 database + plugins, themes, uploads, and the rest of <code>wp-content<\/code>. Pick exactly what to include.<\/li>\n<li><strong>Resumable engine<\/strong> \u2014 large sites back up in bounded chunks and never time out.<\/li>\n<li><strong>One-click restore<\/strong> \u2014 restore the database, files, or both, right from the dashboard.<\/li>\n<li><strong>Scheduled backups<\/strong> \u2014 daily, weekly or monthly at a time you choose. No server cron setup needed; it runs through WordPress and heals its own schedule.<\/li>\n<li><strong>Smart retention<\/strong> \u2014 automatically keep only the most recent N backups.<\/li>\n<li><strong>Exclusions<\/strong> \u2014 skip caches, <code>node_modules<\/code>, logs and anything else with simple patterns.<\/li>\n<li><strong>Email notifications<\/strong> \u2014 get told when a backup finishes or fails.<\/li>\n<li><strong>Activity log<\/strong> \u2014 a clear history of every backup, restore and scheduled run.<\/li>\n<li><strong>Secure storage<\/strong> \u2014 backups live in a protected folder (no public web access) and downloads are nonce + capability protected.<\/li>\n<li><strong>Off-site copies to Google Drive or OneDrive<\/strong> \u2014 connect an account in one click and every backup gets a second home. Uploads are resumable and continue in the background, so a big archive finishes even on a slow shared host.<\/li>\n<li><strong>Restore from the cloud<\/strong> \u2014 lost the server, or deleted the local copy? Pick an off-site backup and it is pulled back onto your site, resuming by itself if the connection drops. Then restore it normally.<\/li>\n<\/ul>\n\n<h4>Built honestly<\/h4>\n\n<p>No nag screens, no crippled free version, no surprise server configuration. The free plugin really backs up and really restores your whole site.<\/p>\n\n<h4>Going further with Pro<\/h4>\n\n<p>An optional commercial add-on, DadsFam Backups Pro, adds more off-site destinations (Amazon S3 and S3-compatible, FTP\/FTPS, SFTP), encrypted off-site copies and advanced schedules. It is a separate plugin and is not required \u2014 Google Drive, OneDrive and cloud restore are all part of this plugin. Pro is at <a href=\"https:\/\/plugins.dadsfam.co.za\/\">plugins.dadsfam.co.za<\/a>.<\/p>\n\n<h4>External services<\/h4>\n\n<p>Connecting Google Drive or OneDrive is optional and nothing is sent anywhere until you connect an account.<\/p>\n\n<p>When you do, this plugin uses the DadsFam connection service at <code>https:\/\/connect.dadsfam.co.za<\/code> to handle the sign-in. You are sent there to approve access, and it returns a one-time code that this site swaps for an access token server-to-server, so the token never travels through your browser. The service receives the provider you chose and the address to send you back to. Terms of use and privacy policy: <a href=\"https:\/\/www.dadsfam.co.za\/privacy-policy\/\">dadsfam.co.za\/privacy-policy<\/a> and <a href=\"https:\/\/plugins.dadsfam.co.za\/privacy-policy\/\">plugins.dadsfam.co.za\/privacy-policy<\/a>.<\/p>\n\n<p>Once connected, your site talks directly to Google (<code>googleapis.com<\/code>) or Microsoft (<code>graph.microsoft.com<\/code>) to upload and download your backups. Nothing passes through DadsFam.<\/p>\n\n<h4>A word about PRO<\/h4>\n\n<p>Right, let me be straight with you, because I hate being sold to as much as you do.<\/p>\n\n<p>Everything above is free and it stays free. Backing your site up on a schedule, restoring it, cloning it to a new domain, downloading the archive, verifying every backup is not corrupt \u2014 none of those are premium features. Those are things a backup plugin should just do, and if I put them behind a paywall I would be taking the mickey.<\/p>\n\n<p>There is a PRO add-on. It exists because I am a dad in Cape Town, and this is one of the things that puts food on the table at my house. That is the honest reason. Not \"unlock your potential\", not \"supercharge your workflow\". Just: if this plugin saved your site and you can spare it, PRO helps me keep building.<\/p>\n\n<p>What PRO adds is the stuff you only want once your backups need to live somewhere other than the same server as your site \u2014 sending each one off to Amazon S3, an FTP or SFTP box, Google Drive or OneDrive, encrypting those off-site copies, keeping a set number of them out there, and running on a tighter schedule. That is convenience and peace of mind. It is not the plugin working properly, because the plugin already works properly.<\/p>\n\n<p>So if the free one does everything you need, brilliant. Genuinely. Use it, and I hope it saves you the afternoon nobody wants \u2014 the one where the site is gone and there is no backup. If you get to the point where off-site copies would let you sleep easier, PRO is at plugins.dadsfam.co.za.<\/p>\n\n<p>Either way, thanks for using something I built. \u2014 Zak, DadsFam<\/p>\n\n<p>PRO adds:<\/p>\n\n<ul>\n<li>Off-site backups to Amazon S3 and S3-compatible storage (Wasabi, Backblaze B2, DigitalOcean Spaces, MinIO)<\/li>\n<li>FTP, FTPS and SFTP destinations<\/li>\n<li>Google Drive and OneDrive<\/li>\n<li>Encrypted off-site copies<\/li>\n<li>Remote retention \u2014 keep a set number of backups off-site<\/li>\n<li>More frequent, advanced backup schedules<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>In your WordPress admin, go to <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Upload the <code>dadsfam-backups.zip<\/code> file and click <strong>Install Now<\/strong>.<\/li>\n<li>Click <strong>Activate<\/strong>.<\/li>\n<li>Open <strong>DadsFam Backups<\/strong> from the admin menu and create your first backup.<\/li>\n<\/ol>\n\n<p>Your server needs the PHP <strong>zip<\/strong> extension (ZipArchive). Almost all hosts have this; if not, ask your host to enable it.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20are%20my%20backups%20stored%3F\"><h3>Where are my backups stored?<\/h3><\/dt>\n<dd><p>In <code>wp-content\/uploads\/dadsfam-backups\/<\/code>, inside a folder protected from direct web access. You can also download any backup to your computer.<\/p><\/dd>\n<dt id=\"will%20a%20backup%20time%20out%20on%20a%20big%20site%3F\"><h3>Will a backup time out on a big site?<\/h3><\/dt>\n<dd><p>No. The backup runs as a series of small steps and resumes itself, so size isn't a problem. Very large sites just take a few more steps.<\/p><\/dd>\n<dt id=\"is%20it%20safe%20to%20leave%20the%20page%20while%20a%20backup%20runs%3F\"><h3>Is it safe to leave the page while a backup runs?<\/h3><\/dt>\n<dd><p>Yes. Manual backups continue while the tab is open; scheduled backups run entirely in the background.<\/p><\/dd>\n<dt id=\"can%20i%20restore%20to%20a%20different%20domain%20or%20different%20table%20prefix%3F\"><h3>Can I restore to a different domain or different table prefix?<\/h3><\/dt>\n<dd><p>The free version restores to the <strong>same<\/strong> site it was taken from. Cross-site migration (changing the domain or database prefix) is a Pro feature.<\/p><\/dd>\n<dt id=\"does%20restore%20overwrite%20my%20site%3F\"><h3>Does restore overwrite my site?<\/h3><\/dt>\n<dd><p>Yes \u2014 that's the point of a restore. Always take a fresh backup first, and ideally test restores on a staging copy before running them on a live site. By default <code>wp-config.php<\/code> is never overwritten.<\/p><\/dd>\n<dt id=\"do%20i%20need%20to%20set%20up%20a%20server%20cron%20job%3F\"><h3>Do I need to set up a server cron job?<\/h3><\/dt>\n<dd><p>No. Scheduling uses WordPress's own cron and self-heals if it ever goes missing.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.11.0<\/h4>\n\n<ul>\n<li><strong>Rewriting the web address is now your choice, not something that just happens to you.<\/strong> Restoring a site always rewrote every mention of the old address in the database to the new one. That is right almost every time \u2014 but not always, and there was no way to say no. Restoring a client's site onto a test install to look at their data, or putting a site back where it came from, both want the database left alone. The Restore window now asks, with the rewrite ticked by default so the common case is still one click.<\/li>\n<li>Untick it and the database is restored word-for-word as it was dumped, still referring to the site it came from. The log says plainly which of the two happened, so you are never left guessing why links point where they do.<\/li>\n<li>The site address itself is still always pointed at the install you are restoring onto, whichever way you set that tick. Without it WordPress would redirect every request back to the original site and you would not be able to reach your own copy \u2014 that is a lockout, not an option.<\/li>\n<\/ul>\n\n<h4>1.10.8<\/h4>\n\n<ul>\n<li><strong>The uploader now adjusts itself to your connection.<\/strong> Piece size used to be worked out from your host's PHP limits alone, which says nothing about the line the file has to travel down \u2014 so on a slow uplink a single 16 MB piece could take minutes, and one blip meant sending all of it again. It now measures the speed it is actually getting and sizes each piece to take about forty seconds: large pieces on a fast line, smaller ones on a poor one, never above what your host accepts or below 1 MB.<\/li>\n<li>Progress now shows megabytes uploaded, the speed you are getting and roughly how long is left, instead of a bare percentage \u2014 and a short panel explains that closing the tab pauses the upload, that nothing is lost if it does stop, and that uploading a backup changes nothing on your site by itself. Closing the tab mid-upload now asks first.<\/li>\n<li>Fixed: a piece could in principle be written to the wrong place in a resumed upload. The browser sends a piece index alongside the byte offset, and that index was derived from the piece size \u2014 so once the size changed mid-upload (on a strict server, or now as it adapts) the index no longer meant what the server would read it as, and a later piece could look like the first one and truncate the file. The server prefers the byte offset, so this could not be reached in normal use, but the index is now simply first-piece or not, which is true whatever the size does.<\/li>\n<\/ul>\n\n<h4>1.10.7<\/h4>\n\n<ul>\n<li><strong>Fixed: an encrypted backup could not be uploaded.<\/strong> Importing a <code>.zip.enc<\/code> file \u2014 the encrypted copy the plugin itself puts in your off-site storage \u2014 was refused with \"That is not a .zip file\". Your own backup was being told it was not a backup. Encrypted backups now upload normally and are unlocked automatically on arrival using this site's passphrase, the same way a cloud restore already did it. Encryption is detected by reading the file, not by its name, so a renamed backup still works.<\/li>\n<li>Fixed: housekeeping only ran when a backup finished or when off-site storage was in use. A site with off-site switched off never swept its staging folder, so an interrupted restore or an abandoned upload could sit there indefinitely. It is now hooked to the hourly watchdog that runs on every site regardless of settings.<\/li>\n<li>The Support tab's \"More from DadsFam\" has been rebuilt: every plugin now has its own card, the ones available on WordPress.org are marked, and the guide sites and hosting are listed properly instead of being left out.<\/li>\n<\/ul>\n\n<h4>1.10.6<\/h4>\n\n<ul>\n<li><strong>Fixed: the screen did not catch up when a job finished.<\/strong> A backup finishing is not the end of the work \u2014 it hands over to an off-site upload that finishes later still, and nothing was watching for that. So the panel could sit on \"your backup is on its way off-site\" long after it had safely arrived, until you reloaded the page yourself. It now refreshes on its own the moment nothing is running any more, whether that is a backup, an upload, or a download from the cloud.<\/li>\n<li>The refresh happens exactly once per job and never on an idle screen, so a dashboard you have left open does not reload itself for no reason.<\/li>\n<\/ul>\n\n<h4>1.10.5<\/h4>\n\n<ul>\n<li><strong>Fixed: a site whose backups had all gone off-site was told it had none.<\/strong> If your local copies are deleted once they are safely uploaded \u2014 the recommended setup \u2014 the dashboard could announce \"your site is not backed up yet\" and ask you to make your first backup, on a site with dozens of them. The cause: the list of what is in your cloud storage is deliberately cleared the moment an upload succeeds, and an empty list was being read as an empty cloud. It now falls back to the upload log, which is always right, and says \"checking\" while it re-reads.<\/li>\n<li><strong>Fixed: the guided setup would not go away.<\/strong> Because of the same fault, the first two steps never ticked off, so the \"Finish your safety net\" panel kept nagging sites that were already fully set up. It now ticks correctly and disappears as it was meant to.<\/li>\n<li><strong>Fixed: pressing Back Up Now did not visibly change anything.<\/strong> The backup started and the console filled up, but the status panel still said what it said before, so the only way to see it change was to reload the page yourself. It now switches to \"Backing up your site now\" the instant you press it, and puts itself back if the backup fails.<\/li>\n<li><strong>The off-site upload progress bar is back.<\/strong> Uploads showed only in the console; there is now a proper bar with the destination and the byte count again, sitting in the off-site panel.<\/li>\n<li>Fixed: the tiles were counting only what is on this server, so the same screen could say \"32 backups you can restore\" at the top and \"1 ready to restore\" just below it. Fixed: the \"Off-site copies\" tile could read \"On this server\", which is the opposite of what it is for.<\/li>\n<\/ul>\n\n<h4>1.10.4<\/h4>\n\n<ul>\n<li>Added screenshots to this plugin's WordPress.org page so you can see what you are installing before you install it.<\/li>\n<li>Same plugin as 1.10.3 otherwise \u2014 no code changed.<\/li>\n<\/ul>\n\n<h4>1.10.3<\/h4>\n\n<ul>\n<li><strong>The whole plugin has been redesigned around one question: if your site broke right now, would you be all right?<\/strong> The Dashboard answers it first, in a sentence, in plain English, before a single number \u2014 then the detail sits underneath for anyone who wants it.<\/li>\n<li>The screen no longer reads as white boxes on a white page: a proper masthead with the navigation built into it, cards that sit off the page instead of being outlined onto it, larger type, and colour that always means the same thing \u2014 green is safe, amber is worth a look, red needs you.<\/li>\n<li><strong>The live activity console is now part of the free plugin.<\/strong> The window under the progress bar that shows what the server is actually doing, line by line, while a backup runs \u2014 it used to sit in the Pro add-on, which meant anybody on the free plugin watching a long backup had only a bar moving and no idea whether it was working or stuck. That was never right. It is core to how this plugin works and it belongs here.<\/li>\n<li>It now reports more than it used to: the backup being built, a restore being applied, an off-site upload with its real byte count and percentage, a backup being pulled back down from the cloud, and anything still waiting in the upload queue. A small light in its title bar pulses only while something is genuinely running, so one glance tells you whether the machine is busy or you are just looking at history.<\/li>\n<li>Fixed along the way: the off-site upload line had silently stopped appearing after off-site storage moved into the free plugin in 1.9.0, because it was still reading an option that nothing writes any more. It works again.<\/li>\n<li><strong>New: a guided setup that tells you what \"finished\" looks like.<\/strong> Three steps \u2014 make a backup, keep a copy off the server, put it on autopilot \u2014 with a progress bar and one button pointing at whichever you have not done. It ticks itself off as you go and disappears entirely once you are properly covered, so it never nags a site that is already safe.<\/li>\n<li><strong>New: the Dashboard is now six large tiles you press<\/strong>, each showing its own live state with a green or grey dot, instead of six words in a menu bar. Big targets, plain names \u2014 \"Put my site back\" rather than \"Restore\".<\/li>\n<li><strong>New: \"If the worst happens\" \u2014 a plain-English recovery plan built into the plugin.<\/strong> Four things that actually go wrong, each one telling you exactly what to do about it: a broken update, a hack, hosting that has vanished, something deleted by mistake. Written to be read by somebody in a panic.<\/li>\n<li>Choosing what to back up is now six large tiles that light up when ticked, readable at arm's length, instead of six small checkboxes.<\/li>\n<li>Your backups list now shows each backup as its own row card rather than a line in a grid.<\/li>\n<li>Everything respects your system's reduced-motion setting.<\/li>\n<li>Fixed: the Dashboard tab ignored your off-site backups completely. If you had connected Google Drive or OneDrive and let the local copies go, the headline figures still read \"0 backups stored\" with dashes for the last backup and its size, and there was no sign anywhere on that screen of the copies sitting safely in your cloud storage. The off-site engine itself was working the whole time \u2014 it was only the Dashboard that never learned to ask. Those three figures now count every backup you have, wherever it is kept.<\/li>\n<li>Added: a protection line under the figures that tells you in one sentence whether your most recent backup has actually made it off-site, is still queued to go, or is only on this server.<\/li>\n<li>Added: an \"Off-site backups\" panel on the Dashboard listing your five most recent backups and where each one is being kept, so you can see at a glance that the copies are really there without opening the Off-site tab.<\/li>\n<li>Added: a Support tab. Every way to reach a human, the version and environment details worth quoting when you do, and the handful of checks that answer most questions before they get asked.<\/li>\n<li>Note for Pro users: the off-site figures on the Dashboard used to be drawn by the Pro add-on, which meant they disappeared for everyone else when off-site storage became free in 1.9.0. They are part of this plugin now. Update DadsFam Backups Pro to 1.6.2 alongside this release.<\/li>\n<\/ul>\n\n<h4>1.10.1<\/h4>\n\n<ul>\n<li>Housekeeping for the WordPress.org plugin review. Google Drive and OneDrive came across from the Pro add-on in 1.9.0, and that code had never been through the review checks \u2014 it was written for a self-hosted plugin. Every one of its direct network and file calls now carries a plain explanation of why it is there: ranged, resumable transfers and chunked reads of very large archives are the whole reason this plugin finishes where others time out, and neither can be done with the helpers the review normally expects.<\/li>\n<li>Fixed: the terms and privacy links in the readme pointed at pages that do not exist. They now point at the real privacy policy, which covers both.<\/li>\n<li>No change to how the plugin behaves. This release is about the paperwork.<\/li>\n<\/ul>\n\n<h4>1.10.0<\/h4>\n\n<ul>\n<li>Added: thirteen more things an AI assistant can do for you through an MCP plugin such as WPVibe \u2014 thirty in total now. It can delete a backup you point at, hand you a private download link, scan the server for backups it does not know about yet, tell you how much room your backups take and how much disk is left, read and rebuild your schedule when its cron event goes missing, clear the activity log, send a test notification email, test an off-site destination that has started failing, list what is actually sitting in your cloud storage, show the upload queue, and stop an upload or a cloud download that is running.<\/li>\n<li>Restoring is still deliberately not something an assistant can trigger. Neither is starting a restore by any other indirect route. That stays a decision you make yourself, on purpose.<\/li>\n<li>Deleting a backup and clearing the log are both marked as destructive and ask for confirmation first, so an assistant cannot quietly throw away the thing you were relying on.<\/li>\n<li>Download links handed out this way are private and time-limited, exactly like the ones from the Backups screen.<\/li>\n<\/ul>\n\n<h4>1.9.0<\/h4>\n\n<ul>\n<li><strong>Off-site backups are now part of the free plugin.<\/strong> Connect Google Drive or OneDrive on the new Off-site tab and every backup gets a second home automatically. One click to connect \u2014 no API keys, no developer setup, no license.<\/li>\n<li><strong>Restore straight from the cloud, free.<\/strong> Lost the server, or let the local copy go to save space? Pick one of your off-site backups and DadsFam pulls it back onto the site for you, then a Restore button appears. Nothing to download to your computer, nothing to re-upload, no filenames to type.<\/li>\n<li>The restore screen lists your cloud backups as a proper picker rather than a dropdown: the date and time first and large, then where each one is stored, how big it is, whether it is encrypted, and whether it is already on this site. Pick a row and only the questions that actually apply to that backup appear.<\/li>\n<li>Uploads and downloads run in slices and continue in the background, so a large backup finishes on a slow shared host instead of hitting the PHP time limit \u2014 and picks up from the exact byte if the connection drops or you close the tab.<\/li>\n<li>Fixed: the dashboard widget called a site \"not protected\" whenever there was no backup on the server \u2014 even with recent copies sitting safely off-site, which is exactly the situation deleting the local copy creates. It now counts off-site copies, says plainly when a backup is held off-site rather than here, and reports how many are stored where.<\/li>\n<li>Added: choose how many backups to keep at each destination, and optionally delete the local copy once a backup is safely off-site.<\/li>\n<li>Added: six AI abilities covering the new features, so an assistant connected through an MCP plugin such as WPVibe can list your destinations, send a backup off-site, list every restore point, and pull one back down. Restoring is still never exposed to an assistant \u2014 that stays a deliberate step you take yourself.<\/li>\n<li><strong>If you use DadsFam Backups Pro:<\/strong> Google Drive and OneDrive have moved here from Pro, and your existing connections are carried across untouched \u2014 nothing to reconnect. Pro keeps Amazon S3, FTP, SFTP, encrypted off-site copies and advanced schedules, and needs updating to 1.6.0 to work with this release. Until you update it, this plugin leaves off-site storage to Pro so nothing is ever uploaded twice.<\/li>\n<\/ul>\n\n<h4>1.8.3<\/h4>\n\n<ul>\n<li>Housekeeping release. An older build (1.7.0) was published to WordPress.org by mistake, which would have rolled sites back to code from several releases earlier. This release republishes the current, correct code so everyone lands back on the right version. If you updated and noticed missing features, updating to 1.8.3 restores them.<\/li>\n<li>No functional changes from 1.8.2 \u2014 the code is identical.<\/li>\n<\/ul>\n\n<h4>1.8.2<\/h4>\n\n<ul>\n<li>Added: a plain-English \"A word about PRO\" note in the readme \u2014 what stays free, why the optional add-on exists, and what it does. No features were moved behind a paywall.<\/li>\n<li>Housekeeping: the readme now lists the current WordPress and PHP versions it is tested against, and the \"learn more about Pro\" link points at the live plugins site instead of a page that had moved. No code changes.<\/li>\n<\/ul>\n\n<h4>1.8.1<\/h4>\n\n<ul>\n<li>Hardening: admin actions now fall back to WordPress' own admin-ajax address if the plugin's own settings object ever fails to load, so buttons keep working instead of silently doing nothing. No change to what the plugin does day to day.<\/li>\n<\/ul>\n\n<h4>1.8.0<\/h4>\n\n<ul>\n<li>Housekeeping release, prompted by the WordPress.org plugin review. Everything the plugin registers inside WordPress \u2014 its settings, its scheduled events, its hooks and its classes \u2014 now carries a full-length <code>dadsfam_backups<\/code> name instead of the old short <code>dfb<\/code> one, so it cannot collide with another plugin or theme on your site.<\/li>\n<li>Your settings, backup index, history, log and schedule are moved across to the new names automatically the first time the updated plugin loads. Nothing is lost, and your actual backup archives are never touched. A backup that happens to be running mid-update carries on.<\/li>\n<li>Two things change if you drive the plugin from outside the dashboard. The REST routes move from <code>\/dfb\/v1\/...<\/code> to <code>\/dadsfam-backups\/v1\/...<\/code>, and the WP-CLI command changes from <code>wp dfb ...<\/code> to <code>wp dadsfam-backups ...<\/code>. Update any scripts or monitoring you have pointed at the old ones.<\/li>\n<li>Add-on hooks were renamed to match (for example <code>dfb_capability<\/code> is now <code>dadsfam_backups_capability<\/code>), so DadsFam Backups Pro must be updated to 1.5.0 at the same time. If one is updated without the other, Pro simply stops loading and tells you \u2014 nothing breaks.<\/li>\n<li>Every folder the plugin reads or writes is now resolved in one place through the WordPress functions for the job, which makes the plugin behave correctly on installs with a moved wp-content folder, a custom uploads path, or Windows-style paths.<\/li>\n<li>Fixed: the Plugin URI in the plugin header pointed at a page that no longer existed.<\/li>\n<\/ul>\n\n<h4>1.7.1<\/h4>\n\n<ul>\n<li>New: the dashboard headline stats (Backups stored \/ Last backup \/ Last size) can now be enriched by add-ons via a new <code>dadsfam_backups_dashboard_stats<\/code> filter, so DadsFam Backups Pro can show what is stored off-site alongside what is on this server. On its own the free plugin looks and behaves exactly as before.<\/li>\n<\/ul>\n\n<h4>1.7.0<\/h4>\n\n<ul>\n<li>Added: AI assistant support. If you connect an AI assistant to your site through an MCP plugin such as WPVibe, it can now check whether a backup is running, run the health checks, list and verify your backups, read the history and log, start or cancel a backup, and read or change your schedule and settings \u2014 all through the WordPress Abilities API (WordPress 6.9 and newer).<\/li>\n<li>Security: every AI action requires the same permission the plugin's own screens use, and restoring a backup is deliberately not exposed to assistants \u2014 a restore overwrites your live site, so it stays a deliberate action behind the admin screens.<\/li>\n<li>Note: the AI interface reuses the plugin's existing REST layer, so the same cooldowns, busy-checks and audit logging apply to an assistant exactly as they do to the API.<\/li>\n<li>On WordPress versions without the Abilities API, nothing changes and the plugin works exactly as before.<\/li>\n<\/ul>\n\n<h4>1.6.9<\/h4>\n\n<ul>\n<li>Fixed: DadsFam Backups PRO was being left out of a restore. Only this plugin needs holding back during a restore, because it is the code doing the work; PRO is a separate plugin and is now copied across like any other, so a restored or cloned site arrives with it in place.<\/li>\n<\/ul>\n\n<h4>1.6.8<\/h4>\n\n<ul>\n<li>Fixed: \"Restore stalled \u2014 the server may be hitting a memory or time limit\" while copying files. The time allowed for each step was only being checked between folders, not between files, so a single folder holding thousands of files (any uploads month, or a large plugin) was worked through in one go. That runs past the server's time limit, the step is killed before its progress can be written down, and the next attempt begins that same folder all over again \u2014 so the restore could never get past it. The clock is now checked for every file, and a step that runs out of time stops exactly where it is and carries on from that same file next time.<\/li>\n<li>Added: if one individual file really is too large to copy within the time a step is allowed, the restore now stops and says what to change, rather than trying it over and over.<\/li>\n<\/ul>\n\n<h4>1.6.7<\/h4>\n\n<ul>\n<li>Fixed: the checks that keep a restored site loading were running before the cache was cleared, so they were reading the site's settings from before the restore. They could therefore leave a genuinely missing plugin switched on, or switch off one that was perfectly fine. The cache is now cleared first.<\/li>\n<li>Fixed: updating the plugin while a restore was already running could stop that restore with an error. A restore started on an older version now continues safely.<\/li>\n<li>Fixed: the free disk space a restore asks for was set too high and could turn away a restore that would have completed without trouble. It now asks for what is genuinely needed.<\/li>\n<li>Fixed: if a file could not be moved into place, the copy no longer removes the existing file first \u2014 the file already on your site is left exactly as it was and the problem is reported instead.<\/li>\n<li>Fixed: the check that spots a file too large to unpack now records each attempt as it happens, so it still works when a request is cut off by the server rather than by PHP.<\/li>\n<\/ul>\n\n<h4>1.6.6<\/h4>\n\n<ul>\n<li>Added: before a restore unpacks anything, it now checks there is enough free disk space for the job. Running out of room partway through is one of the ways a file ends up half-written, and a half-written PHP file takes a site down. If there isn't room the restore refuses to start and says how much is needed, so nothing has been touched.<\/li>\n<li>Fixed: if a single file in the backup is too large to unpack within the server's time limit, the restore now stops and explains what to change, instead of quietly trying the same file over and over.<\/li>\n<\/ul>\n\n<h4>1.6.5<\/h4>\n\n<ul>\n<li>Fixed: THE cause of restores that finished and then left the site showing a critical error. Unpacking the backup counted a file as done before it had finished writing it, so if that step ran out of time halfway through a file, the next step carried on from the following one - leaving a half-written file behind permanently. A half-written PHP file is a parse error, which takes the whole site down. Files are now only counted once they are completely written and checked, so an interrupted step simply picks the same file up again.<\/li>\n<li>Fixed: files are now written to one side and moved into place in a single step, both when unpacking and when copying into the site. An interrupted restore can no longer leave a half-written file where a working one used to be.<\/li>\n<li>Fixed: every unpacked file is now checked against the size recorded in the backup. If anything is short - which nearly always means the server ran out of disk space, or the backup is damaged - the restore stops immediately with a plain explanation, before your site has been touched.<\/li>\n<li>Fixed: a file that could not be read from the backup, or could not be written, was previously skipped in silence and simply went missing from the restored site. This now stops the restore and says which file and why.<\/li>\n<li>Added: any file that could not be written during the copy is now listed in the activity log as an error rather than passing unnoticed.<\/li>\n<\/ul>\n\n<h4>1.6.4<\/h4>\n\n<ul>\n<li>Fixed: if a backup did not record which database table prefix it was made with, the restored tables were left under the old prefix - WordPress then could not find its own data and showed the installer, which looks exactly like the site needing to be set up again. The prefix is now read from the backup itself when it isn't recorded, so the data always lands where this site expects it.<\/li>\n<li>Changed: the notes about files a restore deliberately leaves alone are now summarised in the activity log rather than listed one per file, so the log stays readable on sites with many of them.<\/li>\n<li>Changed: if a restored site's theme is missing and the standard WordPress theme isn't installed either, the site now falls back to whichever theme is available instead of being left without one.<\/li>\n<\/ul>\n\n<h4>1.6.3<\/h4>\n\n<ul>\n<li>Fixed: a restore could finish and then leave the site showing nothing but a critical error. The cause was files that WordPress runs on every single request being copied in from the backup - a caching drop-in belonging to a plugin or service that is not on this site will bring the site down before it can even load the dashboard, leaving no way in to undo it. Those files are now left alone.<\/li>\n<li>Fixed: .htaccess and other server configuration files are no longer copied in from a backup. They belong to the server rather than the site, and one from a different host is a common cause of a blank error page. WordPress rebuilds .htaccess from your permalink settings.<\/li>\n<li>Fixed: the backup plugin no longer replaces its own files while it is in the middle of restoring, which could interrupt a restore part-way through.<\/li>\n<li>Added: after a restore, anything the restored database expects but that is not actually on the site is now handled instead of being allowed to crash it. Plugins whose files are missing are left switched off, and if the theme is missing the site falls back to a default one. Every one of these is written to the activity log so you can see exactly what happened and put it right.<\/li>\n<\/ul>\n\n<h4>1.6.2<\/h4>\n\n<ul>\n<li>Changed: uploading a backup is now much faster. The plugin reads what your server actually allows and sends the largest pieces it safely can, instead of always sending small ones. On a server set up to allow it this cuts the number of requests dramatically - and since every request has to load the whole of WordPress before it writes anything, that overhead was most of the wait.<\/li>\n<li>Changed: each piece is now written straight to disk as it arrives rather than being held in memory first, so larger pieces do not increase memory use.<\/li>\n<li>Added: if a server refuses a piece for being too large (some setups cap this below the PHP settings), the plugin halves the piece size and carries on instead of failing.<\/li>\n<li>Note: to benefit, your hosting needs upload_max_filesize and post_max_size raised. The plugin adapts automatically either way - it will never send a piece your server cannot accept.<\/li>\n<\/ul>\n\n<h4>1.6.1<\/h4>\n\n<ul>\n<li>Fixed: uploading a backup no longer starts again from zero when the connection drops. The upload is now given a name based on the file itself, so choosing the same file again picks up exactly where it stopped instead of throwing away what was already sent.<\/li>\n<li>Fixed: a brief connection glitch no longer cancels the whole upload and delete what had been received. The plugin now waits and retries the piece, up to six times, with a growing pause between attempts, and asks the server how much it already holds before carrying on.<\/li>\n<li>Added: pieces are now placed by position rather than counted in order, so a piece that arrives twice after a dropped connection cannot be written twice or land in the wrong place. The file is checked as a whole before it is imported.<\/li>\n<li>Added: if an upload is left unfinished, what was already sent is kept for three days so it can be resumed, then tidied away automatically.<\/li>\n<\/ul>\n\n<h4>1.6.0<\/h4>\n\n<ul>\n<li>NEW: <strong>Pick exactly what to restore.<\/strong> The restore window now shows a checkbox for each part a backup contains \u2014 Database, Plugins, Themes, Uploads (media library), Other wp-content, and WordPress core \u2014 so you can bring back just what you need (say, only your uploads, or only plugins) instead of all-or-nothing. Leave everything ticked for a full restore or clone (behaviour unchanged); untick parts for a surgical restore. Only the parts a given backup actually contains are shown.<\/li>\n<\/ul>\n\n<h4>1.5.0<\/h4>\n\n<ul>\n<li>NEW: <strong>One-click site cloning.<\/strong> Restoring a backup taken on another site already rewrote every URL to this install automatically \u2014 now the flow makes it obvious and effortless. Import a backup from another site and a big <strong>\"Clone onto this site now\"<\/strong> button appears the moment the upload finishes; the restore screen shows exactly which site the backup is a copy of and which address it will be rewritten to, and in the backups list a foreign backup's action is labelled <strong>\"Clone here\"<\/strong>. No wp-config edits, no search-and-replace plugins \u2014 copying a live site onto a staging\/test subdomain is genuinely a couple of clicks.<\/li>\n<li>NEW: A short, plain-English <strong>\"Copying your live site onto this one?\"<\/strong> guide right on the Import panel.<\/li>\n<li>NEW: <strong>\"Scan for backups on the server.\"<\/strong> Dropped a backup .zip onto the server another way \u2014 cPanel File Manager, FTP, or copied from off-site storage? One click finds it, adds it to your Backups list, and it's ready to restore or clone. The Import panel now also shows the exact folder to drop files into. No more hand-placing  &hellip;<\/li>\n<\/ul>","raw_excerpt":"Reliable, resumable WordPress backups \u2014 full database and files, scheduled or on-demand, with one-click restore. Honest freemium.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/353611","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=353611"}],"author":[{"embeddable":true,"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/dadsfam"}],"wp:attachment":[{"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=353611"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=353611"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=353611"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=353611"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=353611"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/cs.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=353611"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}