Clone Post with Unsaved Changes to a Draft

Description

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 for posts, pages, and any public custom post type, and copies the title, content, excerpt, featured image, taxonomies, discussion settings, format, template, and post meta.

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.
  • “Don’t ask next time” turns the dialog off for instant copies — Ctrl/⌘-click the button to bring it back.
  • 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.
  • Fully translatable (proper wp_set_script_translations integration).

How it works

The plugin reads the current editor state (including unsaved edits) and creates a new draft through the WordPress REST API, then redirects you to the new draft’s edit screen. 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

Installation

  1. Upload the clone-post-unsaved-changes folder to the /wp-content/plugins/ directory, or install the plugin through the Plugins screen in WordPress.
  2. Activate the plugin through the Plugins screen.
  3. Edit any existing post or page — the Save As button appears in the editor toolbar.

FAQ

Does it work on new, unsaved posts?

No. There is nothing to copy until a post has been saved at least once, so the button is hidden on brand-new posts.

Does it copy my unsaved changes?

Yes. The copy is built from the current editor state, so edits you have not saved yet are included in the new draft.

Does it work with pages and custom post types?

Yes. The REST route is derived from the current post type, so posts, pages, and public custom post types are all supported.

What gets copied?

Title, content, excerpt, featured image, categories and tags, discussion (comment/ping) settings, post format, page template, and post meta exposed to the REST API.

I hid both buttons — how do I get them back?

Open the editor’s ⋮ (Options) menu and choose Save As; that item is always available. Uncheck the “Hide” options in the dialog.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Clone Post with Unsaved Changes to a Draft” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.0.1

  • Fix spacing of the sidebar button and update screenshots to full-page landscape views.

1.0.0

  • Initial release.