{"id":374987,"date":"2026-09-29T19:46:16","date_gmt":"2026-09-29T19:46:16","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/click-popup-rescue\/"},"modified":"2026-09-29T18:42:13","modified_gmt":"2026-09-29T18:42:13","slug":"jibberish123-popup-migration","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/jibberish123-popup-migration\/","author":23573103,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.1.4","stable_tag":"0.1.4","tested":"7.1.2","requires":"6.2","requires_php":"8.0","requires_plugins":null,"header_name":"Jibberish123 Popup Migration","header_author":"","header_description":"Independent, non-destructive migration of basic Popup Anything on Click popups.","assets_banners_color":"","last_updated":"2026-09-29 18:42:13","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":54,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.1.4":{"tag":"0.1.4","author":"jibberish123","date":"2026-09-29 18:42:13","revision":3719633}},"upgrade_notice":[],"ratings":[],"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.1.4"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[4155,491,80],"plugin_category":[43,59],"plugin_contributors":[],"plugin_business_model":[],"class_list":["post-374987","plugin","type-plugin","status-publish","hentry","plugin_tags-migration","plugin_tags-popup","plugin_tags-shortcode","plugin_category-customization","plugin_category-utilities-and-tools","plugin_committers-jibberish123"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/jibberish123-popup-migration.svg","icon_2x":false,"generated":true},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Preserve existing popup_anything shortcode IDs for verified static link, button and image click popups. Includes read-only preview, per-popup data export, immutable migration snapshots, status, and rollback. Original legacy posts\/options\/pages are not modified. No tracking or runtime dependencies.<\/p>\n\n<p>Supported source layouts were verified against 1.9.2.1 and 2.9.1.1. Automatic triggers, Pro layouts, embedded shortcodes\/forms\/maps, arbitrary CSS, custom selectors and dynamic content are outside this release. Review README.md and docs\/COMPATIBILITY.md before use.<\/p>\n\n<p>The legacy product was permanently closed after a supply-chain compromise. This tool migrates data; it does not remove malware. Use cleaned staging and complete backups. Deactivate old code without uninstalling it before migration.<\/p>\n\n<!--section=installation-->\n<p>Upload and activate per site. Open Tools -&gt; Popup migration, preview a record, export it, review limitations, and migrate. Test existing pages and purge caches.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20change%20my%20pages%3F\"><h3>Does it change my pages?<\/h3><\/dt>\n<dd><p>No. It registers the existing popup_anything shortcode only if there is no conflicting owner. Migrated IDs keep working while this plugin is active.<\/p><\/dd>\n<dt id=\"is%20it%20a%20full%20replacement%20for%20every%20feature%3F\"><h3>Is it a full replacement for every feature?<\/h3><\/dt>\n<dd><p>No. See the exact supported and blocked cases in the README. Unknown formats require a source-verified adapter.<\/p><\/dd>\n<dt id=\"does%20rollback%20reactivate%20the%20old%20plugin%3F\"><h3>Does rollback reactivate the old plugin?<\/h3><\/dt>\n<dd><p>No. It removes only the selected replacement. Original records remain untouched. Exports are per-popup backups, not full site backups. No JSON import is included.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20data%20when%20this%20plugin%20is%20deleted%3F\"><h3>What happens to data when this plugin is deleted?<\/h3><\/dt>\n<dd><p>Snapshots are retained deliberately. Export first, then request explicit database cleanup if wanted.<\/p><\/dd>\n<dt id=\"does%20it%20contact%20external%20services%3F\"><h3>Does it contact external services?<\/h3><\/dt>\n<dd><p>The plugin performs no server-side HTTP requests or analytics. Front-end image URLs retained from your content can load images from their original hosts. Admin preview blocks remote resources. JSON exports contain private data; store them securely.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.1.4<\/h4>\n\n<p>Uses a distinctive name and slug, moves static admin preview CSS into an enqueued stylesheet, and prefixes new public identifiers and snapshot storage. Earlier evaluation snapshots are imported once during activation.<\/p>\n\n<h4>0.1.3<\/h4>\n\n<p>Rejects malformed saved popup mappings before public rendering and removes a success message that could be forged with a URL parameter. The installable archive now contains only runtime files and operator documentation.<\/p>\n\n<h4>0.1.2<\/h4>\n\n<p>Adds visible-heading dialog names, deterministic forward\/reverse focus cycling, conditional shortcode-driven assets, deferred script loading, block-theme viewport protection, cross-engine and forced-colors coverage, native Safari\/VoiceOver evidence, PHP 8.0 with MariaDB 10.11 and MySQL 8.0 coverage, and verified load through 2,000 synthetic popups, upgrade, concurrency, and per-site multisite evidence.<\/p>\n\n<h4>0.1.1<\/h4>\n\n<p>Renamed to Click Popup Rescue. Added fail-closed database reads, simulated database-failure tests and synchronized concurrency coverage. Existing EPR snapshots are retained. Deactivate the earlier Essential Plugin Rescue build before activating this version.<\/p>\n\n<h4>0.1.0<\/h4>\n\n<p>Initial evaluation build under the earlier name Essential Plugin Rescue.<\/p>","raw_excerpt":"Independent migration of basic click popups from Popup Anything on Click. Not affiliated with EssentialPlugin.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/374987","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=374987"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/jibberish123"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=374987"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=374987"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=374987"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=374987"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=374987"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=374987"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}