BACK TO DIRECTORY

Clone Post with Unsaved Changes to a Draft

by Alimuzzaman Alim

0.0
(0 ratings)

Clone Post with Unsaved Changes to a Draft adds a Save As button to the WordPress block editor. One click copies the post you are editing — including its unsaved changes — into a brand-new draft and opens it, so you can branch, version, or template your content without manually duplicating anything.

It works with supported Gutenberg posts, pages, and public REST-enabled custom post types. The plugin copies saved core fields and registered taxonomies, then applies supported unsaved block-editor changes. Copies are always drafts. Elementor 4.2.3 post/page documents have a separate, version-pinned adapter that mirrors Elementor’s persistent document defaults, captures the unsaved editor snapshot before any save, verifies that Elementor persisted the complete snapshot, and writes it only to the new draft; other versions and document types fail closed. WooCommerce products use WooCommerce’s native duplicate workflow only when a block-editor integration invokes the server adapter; classic Woo product screens, product variations, and unsaved Woo-specific fields remain outside this contract.

Features

  • Save As button in the editor header, next to the native Save button.
  • The same action is also available in the post sidebar and the editor’s ⋮ (Options) menu.
  • A confirmation dialog lets you set the new draft’s title before copying.
  • New draft titles end in (Copy), ready for you to adjust.
  • “Don’t ask next time” turns the dialog off for instant copies — Ctrl/⌘-click the button to bring it back.
  • Press Ctrl/⌘ + Alt + S to open Save As without reaching for the mouse.
  • Hide the toolbar and/or sidebar button from the dialog; the menu item always stays available.
  • Copies are always created as drafts, so you never overwrite the original.
  • Uses a dedicated authenticated endpoint with capability checks and request-id idempotency.
  • Fully translatable (proper wp_set_script_translations integration).

How it works

The plugin sends a constrained snapshot of the current block-editor state to its own authenticated endpoint. The server reads the saved source post, creates a draft for the current user, then applies supported edits and redirects you to the new draft. Nothing is changed on the original post.

Development

Development happens on GitHub. Bug reports, feature requests, and pull requests are welcome:

https://github.com/alimuzzaman/clone-post-unsaved-changes

Screenshots

The Save As button in the block editor toolbar.

The Save As button in the block editor toolbar.

The Save As dialog with title, "don't ask", and visibility options.

The Save As dialog with title, "don't ask", and visibility options.

The Save As action in the post sidebar.

The Save As action in the post sidebar.

Plugin Details

Active Installs
0
Total Downloads
214
Version
1.0.3
Requires WP
6.6
Requires PHP
7.4
Tested Up To
7.1
Added
2026-07-09
Last Updated
2026-08-24 2:41pm GMT

Ratings

5
0
4
0
3
0
2
0
1
0