wp_copy_page
Copy an Elementor page EXACTLY from ONE site to ANOTHER, server-side. Reads the source's raw builder JSON inside Xyle (never through your context, so nothing is truncated) and writes it verbatim to a new page on the destination — every section, text string and style preserved, nothing dropped. Use this for 'replicate this page onto site B' instead of reading with wp_get_page and rebuilding (a large page's data is hundreds of KB and cannot be reproduced losslessly by hand). Optionally re-hosts the source's images into the destination's media library so the copy is self-contained. Elementor Pro widgets are copied as-is and reported (they need Pro on the destination to render). Creates a DRAFT by default; the source is untouched. For a copy WITHIN one site use wp_clone_page instead.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | No | Permalink slug for the new page | |
| title | Yes | Title for the new page on the destination | |
| status | No | draft (default) | publish | private | pending | |
| post_id | Yes | The SOURCE page/post ID to copy | |
| post_type | No | page (default) or post | |
| dest_site_id | Yes | The DESTINATION WordPress site ID (where the copy is created) | |
| rehost_images | No | Copy the source's images into the destination media library and rewrite URLs (default TRUE). False = leave source-hosted URLs. | |
| source_site_id | Yes | The SOURCE WordPress site ID (where the original lives) |