{"id":392660,"date":"2026-10-28T11:16:02","date_gmt":"2026-10-28T11:16:02","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/indiatvdna-backup-restore\/"},"modified":"2026-10-28T11:15:52","modified_gmt":"2026-10-28T11:15:52","slug":"indiatvdna-backup-restore","status":"publish","type":"plugin","link":"https:\/\/da.wordpress.org\/plugins\/indiatvdna-backup-restore\/","author":23585631,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.7","stable_tag":"1.0.7","tested":"7.1.4","requires":"6.2","requires_php":"7.4","requires_plugins":null,"header_name":"IndiaTVDNA Backup & Restore","header_author":"IndiaTVDNA","header_description":"Free full and selective WordPress backups, protected restores, scheduled local backups, encrypted manual Google Drive uploads and verification tools.","assets_banners_color":"0d4b8f","last_updated":"2026-10-28 11:15:52","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":55,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.7":{"tag":"1.0.7","author":"indiatvdna","date":"2026-10-28 11:15:52","revision":3770510}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3770510,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3770510,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3770510,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3770510,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.7"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3770510,"resolution":"1","location":"assets","locale":"","width":1696,"height":872},"screenshot-10.png":{"filename":"screenshot-10.png","revision":3770510,"resolution":"10","location":"assets","locale":"","width":1693,"height":858},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3770510,"resolution":"2","location":"assets","locale":"","width":1723,"height":861},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3770510,"resolution":"3","location":"assets","locale":"","width":1724,"height":868},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3770510,"resolution":"4","location":"assets","locale":"","width":1716,"height":866},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3770510,"resolution":"5","location":"assets","locale":"","width":1696,"height":875},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3770510,"resolution":"6","location":"assets","locale":"","width":1686,"height":863},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3770510,"resolution":"7","location":"assets","locale":"","width":1682,"height":857},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3770510,"resolution":"8","location":"assets","locale":"","width":1712,"height":875},"screenshot-9.png":{"filename":"screenshot-9.png","revision":3770510,"resolution":"9","location":"assets","locale":"","width":1691,"height":864}},"screenshots":[]},"plugin_section":[],"plugin_tags":[151,153,17785,4155,152],"plugin_category":[59],"plugin_contributors":[286478],"plugin_business_model":[],"class_list":["post-392660","plugin","type-plugin","status-publish","hentry","plugin_tags-backup","plugin_tags-database","plugin_tags-google-drive","plugin_tags-migration","plugin_tags-restore","plugin_category-utilities-and-tools","plugin_contributors-indiatvdna","plugin_committers-indiatvdna"],"banners":{"banner":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/banner-772x250.png?rev=3770510","banner_2x":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/banner-1544x500.png?rev=3770510","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/icon-128x128.png?rev=3770510","icon_2x":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/icon-256x256.png?rev=3770510","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-1.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-2.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-3.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-4.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-5.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-6.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-7.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-8.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-9.png?rev=3770510","caption":""},{"src":"https:\/\/ps.w.org\/indiatvdna-backup-restore\/assets\/screenshot-10.png?rev=3770510","caption":""}],"raw_content":"<!--section=description-->\n<p>IndiaTVDNA Backup &amp; Restore provides manual whole-site and selected-component backups, local scheduled backups, resumable jobs, protected restores, downloads, ZIP integrity verification, manual AES-256-GCM encryption\/decryption, and optional manual encrypted Google Drive uploads. Core server configuration such as wp-config.php and .htaccess is excluded: save these separately for disaster recovery.<\/p>\n\n<h4>Included Free features<\/h4>\n\n<ul>\n<li>Full\/selected backup and restore: database, plugins, themes, uploads, other wp-content and supported WordPress core files.<\/li>\n<li>Individual Posts, Pages, Categories and Tags backup and selective restore; preserve parent and category\/tag relationships where possible. Media must be backed up separately for complete image restoration.<\/li>\n<li>Resumable and low-memory backup jobs, local Daily\/Weekly backups, retention and email reports.<\/li>\n<li>Admin-only ZIP downloads, backup history, quick\/deep verification, SQL\/ZIP preflight and storage health checks.<\/li>\n<li>Manual AES-256-GCM vault encryption\/decryption and optional S3-compatible manual vault upload, audit\/download and recovery-catalog tools, using administrator-supplied credentials.<\/li>\n<li>Optional manual Google Drive upload: OAuth 2.0 connect with your own Google Cloud project, explicit privacy consent, private encryption passphrase, resumable transfer and integrity metadata checks.<\/li>\n<li>Read-only snapshot comparison and Free WP-CLI backup, archive analysis, selective packaging, and migration planning tools.<\/li>\n<\/ul>\n\n<h4>Optional Pro edition<\/h4>\n\n<p>Automatic encrypted Google Drive and S3\/R2 uploads, authenticated delta package creation and advanced CLI staging-recovery commands are not included in this Free package. The dashboard shows small informational cards that link to https:\/\/indiatvdna.com\/ only when an administrator chooses to open them. No locked premium code, trial quotas, telemetry or license checks are included.<\/p>\n\n<h4>Important security and scope<\/h4>\n\n<p>Archive size and record count have no artificial Free-edition paywall; provider\/server disk space, PHP, ZIP and database limits still apply. Backups can contain customer and credential data: store them securely, protect access, keep encryption passphrases offline and run a full test restore on staging before relying on disaster recovery. A local ZIP is not a complete server configuration snapshot. WordPress staging, multisite and WooCommerce restore compatibility depend on installation details and are not guaranteed without tests.<\/p>\n\n<h3>External services<\/h3>\n\n<p>Local backup\/restore does not use any external service. External transfers are OFF unless the administrator explicitly configures and initiates them.<\/p>\n\n<h4>Google Drive<\/h4>\n\n<p>When the administrator connects Google Drive, OAuth uses Google authorization and token services. A manually selected ZIP is locally AES-256-GCM encrypted before being sent over HTTPS to Google Drive under the administrator's account, with the limited drive.file scope. Google receives encrypted vault bytes and file metadata; the original ZIP remains on the WordPress server. OAuth credentials are stored with local encryption using WordPress salts. Disconnect stops new requests; previously uploaded files remain in the user's Google Drive. Google login may require a verified\/published OAuth client with allowed test users.\nService: https:\/\/drive.google.com\/\nPrivacy: https:\/\/policies.google.com\/privacy\nTerms: https:\/\/policies.google.com\/terms<\/p>\n\n<h4>S3-compatible storage<\/h4>\n\n<p>An administrator may manually upload encrypted vault files to a chosen S3-compatible provider, whose identity, endpoint, privacy terms and cost are selected\/configured by the site owner. Encrypted vault content and object metadata go directly to that provider only when requested. The plugin itself is not a cloud-storage service.\nAmazon S3: https:\/\/aws.amazon.com\/s3\/ ; Privacy: https:\/\/aws.amazon.com\/privacy\/\nCloudflare R2: https:\/\/www.cloudflare.com\/developer-platform\/r2\/ ; Privacy: https:\/\/www.cloudflare.com\/privacypolicy\/<\/p>\n\n<h4>IndiaTVDNA website<\/h4>\n\n<p>The plugin includes optional View Pro cards and a small Buy Pro Version link in the plugin-owned admin page header, pointing to https:\/\/indiatvdna.com\/. No information is sent to that site unless the administrator explicitly clicks a link.<\/p>\n\n<h3>Source code and build instructions<\/h3>\n\n<p>The plugin is distributed as human-readable source code. All PHP is shipped in\nthis ZIP. assets\/admin.js is shipped as editable JavaScript, with a separately formatted\nhuman-readable equivalent at assets\/admin.source.js; assets\/admin.css is editable.\nNo transpiler, minifier or external build tools are needed. There is no hidden\nsource repository dependency and the distributed JavaScript can be edited directly.\nStandalone PHP CLI-only database\/disaster-recovery scripts are provided separately\nas optional offline tools and are not installed into a public web directory.<\/p>\n\n<h3>Backup storage safety<\/h3>\n\n<p>New installations use a dedicated vault inside the WordPress uploads directory resolved via wp_upload_dir(), under indiatvdna-backup-restore. Before creating or transferring any unencrypted backup, the plugin checks that a direct HTTP request cannot read a random probe file from the vault. If a host ignores .htaccess (for example, many Nginx configurations), the plugin blocks new backups until the site administrator configures server-level access denial. Existing user-configured private vault paths and backups are retained. The plugin cannot guarantee every host's restore permissions. All core\/plugin\/theme filesystem restores must be explicitly initiated by an administrator and may fail on read-only hosts. Use a separate staging installation to verify restores. Never expose downloaded unencrypted backup ZIPs publicly.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload and activate the plugin. Open the Backup &amp; Restore menu in WordPress admin.<\/li>\n<li>Select components, make a local backup and run verification before depending on it.<\/li>\n<li>Use Restore \/ Migrate to preview and restore on a separate staging site first.<\/li>\n<li>Optionally configure Google Drive with your own Google Cloud OAuth Web application, correct HTTPS Redirect URI and a separate 16+ character offline-kept passphrase. Explicitly accept upload privacy notice, then initiate uploads manually.<\/li>\n<li>For manual S3\/R2 operations you must configure your own S3-compatible credentials and encryption settings in private server configuration.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20i%20back%20up%20and%20restore%20without%20paying%3F\"><h3>Can I back up and restore without paying?<\/h3><\/dt>\n<dd><p>Yes. Full and selective local backup and restore work without a license or cloud service.<\/p><\/dd>\n<dt id=\"are%20there%20upload%20size%20limits%20in%20free%3F\"><h3>Are there upload size limits in Free?<\/h3><\/dt>\n<dd><p>No premium paywall quotas. Hosting, filesystem and third-party limits still apply.<\/p><\/dd>\n<dt id=\"is%20google%20drive%20automatic%20in%20free%3F\"><h3>Is Google Drive automatic in Free?<\/h3><\/dt>\n<dd><p>No. Google Drive upload is manually initiated in Free after the administrator connects and consents.<\/p><\/dd>\n<dt id=\"do%20i%20need%20a%20paid%20cloud%20account%3F\"><h3>Do I need a paid cloud account?<\/h3><\/dt>\n<dd><p>No provider account is required for local backups. Remote storage accounts can have provider-imposed usage or charges.<\/p><\/dd>\n<dt id=\"can%20i%20restore%20directly%20from%20google%20drive%3F\"><h3>Can I restore directly from Google Drive?<\/h3><\/dt>\n<dd><p>No. Download the vault through Google Drive, import\/decrypt in Vault &amp; Cloud, then verify and restore the ZIP. Keep the passphrase safe.<\/p><\/dd>\n<dt id=\"is%20every%20server%20setting%20included%3F\"><h3>Is every server setting included?<\/h3><\/dt>\n<dd><p>No. Back up wp-config.php, .htaccess and other sensitive server configuration separately.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Resolve uploads, core, plugins and content directory paths centrally; use the actual configured uploads path during restore.<\/li>\n<li>Default new vaults to a dedicated uploads\/indiatvdna-backup-restore directory and refuse unverified public backups.<\/li>\n<li>Keep core-restore staging under the managed vault; stop generating IIS web.config files.<\/li>\n<li>Preserve existing backups, legacy vault configuration and ZIP archive entry names.<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Use the WordPress core debug-reporting helper when available instead of the PHP error_log() function for a recoverable storage-metadata migration warning.<\/li>\n<li>Keep WordPress 6.2\/6.3 compatibility, never report with debugging off, and avoid throwing during error reporting. Existing backup paths and file-storage behavior are unchanged.<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Make storage metadata migration deferred and fail-safe instead of running filesystem writes during WordPress plugin loading.<\/li>\n<li>Preserve existing backups, signed storage metadata, and legacy upgrades.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Store the signed recovery backup-location marker in a private plugin-specific uploads directory instead of writing to wp-content. Preserve and migrate older markers without moving existing backups.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Moved the durable storage-location marker to a non-executable file; safely reads and migrates the old PHP marker without changing the private backup path. Recovery job markers now commit atomically.<\/li>\n<li>Escaped all dynamic diagnostic labels and server data in dashboard-generated HTML.<\/li>\n<li>Removed obsolete edition-specific option filtering while preserving existing Google Drive consent, nonce and account requirements.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Removed the Google Drive Free\/Pro background-worker entitlement gate; encryption and administrator consent remain mandatory.<\/li>\n<li>Switched legacy admin-menu compatibility CSS and JavaScript to WordPress enqueue and inline APIs.<\/li>\n<li>Stopped creating executable PHP in mu-plugins during restore; private recovery markers and staged runtime isolation remain. High-risk restores require staging verification.<\/li>\n<li>Moved independent offline-only CLI recovery scripts out of the public plugin archive into a separate optional package.<\/li>\n<li>Documented readable JavaScript source and the no-build source workflow.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Corrected Google Drive permission-message translation domain and the Free edition privacy-policy title.<\/li>\n<li>Improved direct-web-access protection for the then-bundled offline recovery scripts, explicit AJAX nonce checks, input validation and readme formatting.<\/li>\n<li>Added a single, discreet Buy Pro Version link to the header of the plugin's own admin screens (including diagnostics). No outside requests are made without a click.<\/li>\n<li>No changes to the backup, restore, security or cloud engines.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First Free release candidate. Functional local backup and restore, manual encrypted cloud tools and Google Drive OAuth kept. Premium-only automatic cloud scheduling, delta-package creation and staging CLI engine omitted.<\/li>\n<\/ul>","raw_excerpt":"Create full and selective WordPress backups, verify ZIP files, restore data, and optionally upload encrypted copies to Google Drive.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/392660","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=392660"}],"author":[{"embeddable":true,"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/indiatvdna"}],"wp:attachment":[{"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=392660"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=392660"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=392660"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=392660"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=392660"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/da.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=392660"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}