Skip to content

Sync

Once two sites are paired (see Migrate), Sync pushes updates from this site to the paired live site without a full migration. There are two ways to sync, for two different jobs.

Content Sync is the everyday tool: publish the pages you just edited, and nothing else.

The Changes to sync list shows every page, post, and CPT that changed locally since it was last synced to the paired site. Each row has Sync and Discard.

  • Sync pushes just that item to the live site. Only its content, custom fields, taxonomy terms, and attached media travel (the featured image plus every image referenced in the content and in Elementor data). The item is matched on the live site by a stable sync id, so it updates the right page even if IDs differ, and media IDs and URLs are remapped so it renders correctly.
  • Discard removes the item from the list without syncing (marks it as intentionally not-to-sync).

There is no full database import and no downtime, and the rest of the live site is completely untouched. This is the safe way to push a content change to a live site that also has its own orders, comments, or form entries you don’t want to overwrite.

EMCP Tools → Backup, Sync & Migrate → Sync tab, with the Changes to sync list and its Sync/Discard row actions

Each syncable item carries a stable sync id stored in its meta. On the first sync, the connector creates the item on the live site and records that id; on later syncs it finds the existing item by id and updates it in place. That is why renaming or re-slugging a page locally still updates the correct live page.

Under the Advanced disclosure on the Sync tab, you can push a whole-site scope:

  • Full: the database and all files.
  • Selective: choose exact database tables and/or file areas (themes, plugins, uploads, or a specific relative path).

A selective sync restores only what you pushed on the destination and leaves everything else alone, so you can push a theme folder without touching the live site’s database, or push one plugin’s table without its files. A files-only sync never rewrites the live database.

Selective sync uses the same resumable, firewall-safe packet transfer as migration.

SituationUse
You edited a few pages and want them liveContent Sync
You changed a theme or plugin’s filesSelective sync (files only)
You want to overwrite the whole live siteFull sync (or a migration)

A connected agent can list local changes with list-syncable-changes (on by default), push one item with sync-content-item, or push a scope with sync-to-live. The two push tools are destructive, disabled by default, and require confirm: true. See the module overview.