Skip to main content
  1. All Posts/


Tools Open Source Sync WordPress


WP-CLI plugins for syncing WordPress databases, media and plugins.


Global (recommended)

wp package install


Copy wpsyncz.php to your /wp-content/mu-plugins/ folder.


WPSyncz needs to be installed on any remote servers before it can be used.
You can do this globally on the remote server (once you’ve configured your aliases, see Configuration below):

wp <alias> package install
# eg: wp @production package install

Additionally there is a command built in to do a “local” install on the remote server.

wp syncz install <alias>
# eg: wp syncz install @production


WPSyncz works with WP-CLI aliases.
The easiest way to configure this is to add wp-cli.local.yml to your WordPress root.


Only aliases with the ssh key set will work at this stage. This means alias groups don’t work.
If a @local alias is defined, this will be the install you will be “pushing” from and “pulling” to.
@local is also used internally to refer to the local install if it is not defined.


# Pull data from a remote server
wp syncz pull <source> [<actions>...] [--yes]
# eg: wp syncz pull @production
# eg: wp syncz pull @staging db media

# Push data to a remote server
wp syncz push <destination> [<actions>...] [--yes]
# eg: wp syncz push @production
# eg: wp syncz push @staging plugins

# Sync between 2 remote servers
wp syncz remote <source> <destination> [<actions>...] [--yes]
#eg: wp syncz remote @production @staging

# Install WPSyncz on a remote server
wp syncz install [<destination>] [--yes]

# Used internaly to get data used for syncing
wp syncz data <source> [<actions>...]
# eg: wp syncz data @local