{"id":231869,"date":"2025-05-18T02:10:55","date_gmt":"2025-05-18T02:10:55","guid":{"rendered":"https:\/\/ja.wordpress.org\/plugins\/post-migration\/"},"modified":"2026-09-07T07:04:43","modified_gmt":"2026-09-07T07:04:43","slug":"post-migration","status":"publish","type":"plugin","link":"https:\/\/id.wordpress.org\/plugins\/post-migration\/","author":20901693,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.0","stable_tag":"1.2.0","tested":"6.8.8","requires":"6.4","requires_php":"8.2","requires_plugins":null,"header_name":"POST MIGRATION","header_author":"Web Creator ITmaroon","header_description":"This plugin allows you to export post data along with associated media, revisions, and comments into a ZIP file and port it to another WordPress site.","assets_banners_color":"376887","last_updated":"2026-09-07 07:04:43","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/itmaroon.net","rating":0,"author_block_rating":0,"active_installs":10,"downloads":740,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"itmaroon","date":"2025-05-18 02:13:08","revision":3295496},"1.0.1":{"tag":"1.0.1","author":"itmaroon","date":"2025-06-04 01:05:25","revision":3306092},"1.1.0":{"tag":"1.1.0","author":"itmaroon","date":"2025-06-19 05:18:33","revision":3314287},"1.2.0":{"tag":"1.2.0","author":"itmaroon","date":"2026-09-07 07:04:43","revision":3684326}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3295494,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3295494,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3295494,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3295494,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.1.0","1.2.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3295494,"resolution":"1","location":"assets","locale":"","width":2296,"height":787},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3295494,"resolution":"2","location":"assets","locale":"","width":869,"height":542},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3295494,"resolution":"3","location":"assets","locale":"","width":2188,"height":652}},"screenshots":{"1":"Post data export settings and execution screen","2":"Post data import settings and execution screen","3":"Post data import results display screen"}},"plugin_section":[],"plugin_tags":[9055,84,86,10745],"plugin_category":[50],"plugin_contributors":[218452],"plugin_business_model":[],"class_list":["post-231869","plugin","type-plugin","status-publish","hentry","plugin_tags-duplicate","plugin_tags-media","plugin_tags-post","plugin_tags-transfer","plugin_category-media","plugin_contributors-itmaroon","plugin_committers-itmaroon"],"banners":{"banner":"https:\/\/ps.w.org\/post-migration\/assets\/banner-772x250.png?rev=3295494","banner_2x":"https:\/\/ps.w.org\/post-migration\/assets\/banner-1544x500.png?rev=3295494","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/post-migration\/assets\/icon-128x128.png?rev=3295494","icon_2x":"https:\/\/ps.w.org\/post-migration\/assets\/icon-256x256.png?rev=3295494","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/post-migration\/assets\/screenshot-1.png?rev=3295494","caption":"Post data export settings and execution screen"},{"src":"https:\/\/ps.w.org\/post-migration\/assets\/screenshot-2.png?rev=3295494","caption":"Post data import settings and execution screen"},{"src":"https:\/\/ps.w.org\/post-migration\/assets\/screenshot-3.png?rev=3295494","caption":"Post data import results display screen"}],"raw_content":"<!--section=description-->\n<p>This plugin provides the ability to migrate individual WordPress post data to another WordPress site.\nSpecifically, it provides the following features that are not provided by the standard import and export tools provided by WordPress.\n1. The standard tool does not export images and other media data. Instead, the importer reads the image URL in the XML and attempts to re-download the file from a remote location. However, this requires that the import source site is public and the media file URL is accessible. If the site is local or private, the media download will fail and only an empty attachment post will be created.\nThis plugin extracts images and other media data and WordPress database information and exports them together in a single ZIP file, eliminating such problems.\n2. The standard tool does not export revisions, but this plugin provides export and import functions.\n3. The standard tool allows you to select what to export for each post type, but not for each individual post.\nThis plugin allows you to select what to export for each individual post.<\/p>\n\n<h3>Related Links<\/h3>\n\n<ul>\n<li><a href=\"https:\/\/github.com\/itmaroon\/post-migration\">POST MIGRATION:Github<\/a><\/li>\n<\/ul>\n\n<h3>Third Party Libraries<\/h3>\n\n<p>This plugin uses the following third-party libraries:<\/p>\n\n<h3>FileSaver.js<\/h3>\n\n<ul>\n<li>Purpose: Used to enable client-side file saving functionality (e.g., downloading generated ZIP files in the browser).<\/li>\n<li>Library URL: https:\/\/github.com\/eligrey\/FileSaver.js\/<\/li>\n<li>License: MIT License<\/li>\n<li>Resources : https:\/\/github.com\/eligrey\/FileSaver.js<\/li>\n<\/ul>\n\n<p>Copyright (c) 2016 Eli Grey.<\/p>\n\n<p>Permission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and\/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:<\/p>\n\n<p>The above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.<\/p>\n\n<p>THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.<\/p>\n\n<h3>JSZip<\/h3>\n\n<ul>\n<li>Purpose: Legacy library retained in the distribution. Current ZIP generation and import parsing are performed on the server with PHP ZipArchive.<\/li>\n<li>Library URL: https:\/\/github.com\/Stuk\/jszip<\/li>\n<li>License: MIT License<\/li>\n<\/ul>\n\n<p>Copyright (c) 2009-2022 Stuart Knightley, David Duponchel,\n          Franz Buchinger, Ant\u00f3nio Afonso<\/p>\n\n<p>Permission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and\/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:<\/p>\n\n<p>The above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.<\/p>\n\n<p>THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>From the WP admin panel, click \u201cPlugins\u201d -&gt; \u201cAdd new\u201d.<\/li>\n<li>In the browser input box, type \u201cPOST MIGRATION\u201d.<\/li>\n<li>Select the \u201cPOST MIGRATION\u201d plugin and click \u201cInstall\u201d.<\/li>\n<li>Activate the plugin.<\/li>\n<\/ol>\n\n<p>OR\u2026<\/p>\n\n<ol>\n<li>Download the plugin from this page.<\/li>\n<li>Save the .zip file to a location on your computer.<\/li>\n<li>Open the WP admin panel, and click \u201cPlugins\u201d -&gt; \u201cAdd new\u201d.<\/li>\n<li>Click \u201cupload\u201d.. then browse to the .zip file downloaded from this page.<\/li>\n<li>Click \u201cInstall\u201d.. and then \u201cActivate plugin\u201d.<\/li>\n<\/ol>\n\n<!--section=changelog-->\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Improved reliable migration of selected posts, revisions, custom fields, comments, featured images, and media through server-generated ZIP archives.<\/li>\n<li>Added safer staged imports, media-path handling, cleanup, validation, cancellation, and failure reporting while preserving the existing interface.<\/li>\n<li>Removed Composer package dependencies and made the migration and progress components self-contained within Post Migration.<\/li>\n<\/ul>\n\n<h4>1.1.9<\/h4>\n\n<ul>\n<li>Removed the remaining Composer package dependency and custom Composer loader.<\/li>\n<li>Post Migration now runs only with its plugin-local progress and migration classes.<\/li>\n<\/ul>\n\n<h4>1.1.8<\/h4>\n\n<ul>\n<li>Moved the post, revision, custom-field, comment, and media import logic into a Post Migration-specific class.<\/li>\n<li>Isolated migration processing from similarly named classes loaded by other plugins.<\/li>\n<\/ul>\n\n<h4>1.1.7<\/h4>\n\n<ul>\n<li>Moved the progress overlay and cancellation handler into Post Migration.<\/li>\n<li>Removed the dependency on block-class-package without changing the import or export interface.<\/li>\n<\/ul>\n\n<h4>1.1.6<\/h4>\n\n<ul>\n<li>Escaped imported titles and downloadable logs instead of inserting migration data as HTML.<\/li>\n<li>Rejected ambiguous duplicate ZIP entries and invalid import modes.<\/li>\n<li>Added a capability check to cancellation requests and removed an unused script dependency.<\/li>\n<\/ul>\n\n<h4>1.1.5<\/h4>\n\n<ul>\n<li>Always clean up temporary import jobs after success, cancellation, or failure.<\/li>\n<li>Stop incomplete imports on group errors and report the failed group.<\/li>\n<li>Use direct ZIP-path media lookup while retaining legacy import compatibility.<\/li>\n<\/ul>\n\n<h4>1.1.4<\/h4>\n\n<ul>\n<li>Removed obsolete export_data.json and WP_Filesystem cleanup from the export flow.<\/li>\n<li>Normalized export targets and stopped incomplete ZIP creation when an individual post export fails.<\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Preserve the parent post featured image after importing its revisions.<\/li>\n<li>Prevent a failed revision import from reusing the previous record ID for media updates.<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Verify that reused media records still have readable files before using them.<\/li>\n<li>Detect and report failures when assigning featured images.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<p>Moved ZIP creation and staged ZIP import processing to the server, while preserving the existing import and export interface.<\/p>\n\n<h4>1.1.0<\/h4>\n\n<p>Added functionality to ensure proper export and import when gallery is used as an ACF custom field type.<\/p>\n\n<h4>1.0.1<\/h4>\n\n<p>Update due to the version upgrade of the composer package of wpsetting-class-package<\/p>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Release<\/li>\n<\/ul>","raw_excerpt":"This is a plugin that transfers data for individual posts to another WordPress site.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/231869","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=231869"}],"author":[{"embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/itmaroon"}],"wp:attachment":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=231869"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=231869"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=231869"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=231869"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=231869"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=231869"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}