{"banners":{"high":"https://res.cloudinary.com/demo/image/upload/c_fill,w_1544,h_500/sample.jpg","low":"https://res.cloudinary.com/demo/image/upload/c_fill,w_722,h_250/sample.jpg"},"requires_php":"7.0","version":"1.0.5","last_updated":"2026-10-18 18:51:50","slug":"json-post-import-export","sections":{"installation":"<ol><li>Upload the json-post-import-export folder to /wp-content/plugins/, or upload the zip under Plugins &rarr; Add New &rarr; Upload Plugin.</li><li>Activate the plugin. Keep it active to receive updates.</li><li>To export, click <em>Export as JSON</em> under any post or page in the Posts or Pages list (needs the export capability).</li><li>To import, go to Tools &rarr; Import JSON, choose the file and click Import JSON (needs manage_options). Tick <em>Update existing</em> to overwrite the post with the same ID and post type instead of creating a new one.</li></ol>","changelog":"<h4>1.0.5 &mdash; 18 October 2026</h4>\n\t\t<ul>\n\t\t  <li>Update offers now appear even when the site cannot reach WordPress.org.</li>\n\t\t</ul>\n\n\t\t<h4>1.0.4 &mdash; 18 October 2026</h4>\n\t\t<ul>\n\t\t  <li>Backslashes in imported titles, content, excerpts and meta values (including array meta) are now kept. WordPress previously stripped them, so <code>C:\\dir\\file</code> became <code>C:dirfile</code>.</li>\n\t\t  <li>Custom taxonomy terms now round-trip. Exports list each taxonomy&rsquo;s terms by slug and name, and the import restores them for every taxonomy registered for the post type. Missing terms are created only if you can manage that taxonomy, otherwise they are skipped with a notice. Taxonomies unknown to the importing site are skipped with a notice.</li>\n\t\t  <li>Files exported by 1.0.1 to 1.0.3 still import: categories and tags as before, and custom taxonomy terms are now restored from them too.</li>\n\t\t  <li>The 1.0.2 import hardening (nonce, capability check, no object unserialisation, escaped errors) is unchanged.</li>\n\t\t</ul>\n\n\t\t<h4>1.0.3 &mdash; 18 October 2026</h4>\n\t\t<ul>\n\t\t  <li>Background auto-updates now work (WP-cron, WP-CLI and Easy Updates Manager), plus updater robustness fixes.</li>\n\t\t</ul>\n\n\t\t<h4>1.0.2 &mdash; 18 October 2026</h4>\n\t\t<ul>\n\t\t  <li>Import hardening: the Tools &rarr; Import JSON form now carries a nonce, and the nonce plus the <code>manage_options</code> capability are checked before any file is processed.</li>\n\t\t  <li>Imported meta is no longer passed through <code>maybe_unserialize()</code>, which could instantiate PHP objects from a crafted file. Array meta (exported as serialized strings) is decoded with <code>unserialize()</code> and <code>allowed_classes</code> set to false; if a value still contains an object it is stored as the original plain string. Files exported by 1.0.1 import exactly as before.</li>\n\t\t  <li>Import error messages are escaped with <code>esc_html()</code>.</li>\n\t\t  <li>Fixed the PHP 8.1+ &ldquo;Implicit conversion from float to int&rdquo; deprecation in the export and import-history timestamps.</li>\n\t\t  <li>Export no longer raises PHP warnings when <code>_wpnonce</code> or <code>post_id</code> is missing from the request.</li>\n\t\t  <li>Tested with WordPress 7.1 and PHP 8.3.</li>\n\t\t</ul>\n\n\t\t<h4>1.0.0 - 1.0.1 &mdash; 18 March 2024</h4>\n\t\t<ul>\n\t\t  <li>Initial releases.</li>\n\t\t</ul>","description":"Export posts as JSON files and import them."},"author_profile":"https://profiles.wordpress.org/harryfear","name":"JSON Post Import Export","requires":"4.8","author":"<a href='https://pph.me/harryfear'>Harry F.</a>","download_url":"https://plugins.skydesignltd.com/repos/json-post-import-export/latest/json-post-import-export.zip?ver=1.0.5","tested":"7.1"}