WordPress has no native way to duplicate a page
You built a landing page that converts. You want to spin up three variants — same layout, different headlines. WordPress gives you no built-in way to clone a page. The alternatives are the Duplicate Post plugin (one more plugin to maintain) or manual copy-paste of block content (tedious, error-prone).
What most people do instead
A better way: one command, complete clone
Run duplicate page -page_id=247. The command clones title, content, excerpt, featured image, categories, tags, and every custom meta field. The clone arrives as a draft named "Copy of [original title]" — edit it, publish when ready.
Not just the content — every field. Featured image, custom fields, taxonomies, SEO overrides (Yoast / Rank Math), WooCommerce attributes, ACF fields. The clone is identical to the original except its slug (unique-suffixed) and status (draft).
How it works
The command uses WordPress\'s wp_insert_post with a deep copy of the original page\'s content, then replays every postmeta row under the new post ID. Taxonomy terms are re-assigned by term ID. The result is a byte-identical clone under a new draft ID.
| Parameter | Value |
|---|---|
-page_id(required) | ID of the page to duplicate |
| What\'s cloned | Title, content, excerpt, featured image, categories, tags, ALL custom meta fields |
| What\'s unique on the clone | ID, slug (with -copy-N suffix), status (draft), dates (current timestamp) |
| Can be used in |
Real example
Your marketing team runs A/B tests on landing pages. Every new variant is a duplicate of the previous winner with one element changed. Without this command, you'd open the Duplicate Post plugin, click duplicate, wait. With duplicate page -page_id=247 you get a draft copy in under a second, ready to edit.