WordPress plugin intelligence profile

Miroir Local Sync

Bidirectional sync between a local WordPress and one or more production sites: push, pull, search-replace, per-component file and content deployment.

WP PlugIndex snapshot

Current directory snapshot

Tested up to WordPress 7.1
Current version1.5.1
WordPress coverageTested up to WordPress 7.1
Minimum stackWP 6.0 · PHP 8.1
Directory statusactive
Last directory update9 Sept 20261mo ago
Active installations10Adoption metric — not a quality score
WordPress.org ratingNo WordPress.org ratings yet
Official packageDirect from WordPress.org

Repository metrics are context, not quality scores. Active installations measure adoption and can strongly reflect a plugin’s age and historical popularity. Ratings, recent updates and “Tested up to” metadata also do not guarantee modern code, error-free operation, security, feature completeness or suitability for a particular site. Why active installs don’t tell the whole story →

WP PlugIndex currently records Miroir Local Sync version 1.5.1 as active, updated 1mo ago and tested up to WordPress 7.1.

Overview

About this plugin

Miroir keeps a local WordPress environment and one or more remote sites in sync, with an interface designed for non-technical users.

The same plugin embeds two roles: an orchestrator on the local site and an agent on each remote site. They communicate over the WordPress REST API (authenticated with Application Passwords) and, optionally, SFTP.

Features:

  • Push (local to production) and Pull (production to local) of the database.
  • Safe search-replace that handles PHP-serialized data, escaped JSON (Gutenberg blocks) and wp_options.
  • Automatic snapshot and rollback before a database import.
  • Comparison screen with a per-component diff and data-loss warnings.
  • File deployment of specific themes and plugins.
  • Editorial content merge by post type (GUID-matched, no deletion; WooCommerce excluded).
  • One-click deployment shortcuts.
  • REST (chunked) and SFTP transport.
  • Live data protection on push: WooCommerce orders, customers, users, comments and reviews on the target keep their current state.
  • Scheduled sync (WP-Cron): refresh your local copy from production automatically.
  • WP-CLI commands ( wp miroir status|compare|push|pull ) for CI/CD and system crons.
  • Webhook notifications (Slack, Discord, custom endpoint) in addition to email.
  • CSV export of the activity log.
  • File rollback: themes and plugins are snapshotted before deployment and can be restored, alongside database snapshots, from the Snapshots view.
  • Streaming database import (constant memory) and one-pass search-replace, safe on hosts without shell access.
  • SSH host key pinning on first SFTP pairing, and checksum-verified transfers.
  • Activity log with per-site filters and pagination; keyboard- and screen-reader-friendly screens.

External services

Miroir only ever talks to servers you configure yourself. No data is sent to Sumotori or to any service belonging to the plugin’s author. The plugin contains no telemetry, no analytics, no licence check and no phone-home of any kind.

If you pair no site and configure no SFTP host or webhook, Miroir makes no outbound request at all.

1. The remote WordPress sites you pair with

com ). There is no default and no suggested host.

What is sent: your WordPress username and Application Password for that site (HTTP Basic Auth, over the connection scheme of the URL you gave); database dumps produced from the current site; ZIP archives of the themes, plugins or media folders you selected; JSON bundles of the post types you chose to merge; and, when you ask for it, a ZIP of the Miroir plugin itself in order to update the remote agent.

What is received: the remote site’s status, its list of themes, plugins, media and content, its database dump when you pull, and the result of each operation.

When: only on an explicit action of yours (a push, a pull, a comparison, a deployment shortcut, an agent update) or on the schedule you enable yourself in Settings → Scheduled sync. Nothing is transmitted in the background otherwise.

This exchange is the entire purpose of the plugin: the site you pair with is your own, and the terms that apply are those of its host.

2. An SFTP host (optional)

If, and only if, you fill in the SFTP settings of a profile, Miroir connects to the host, port and account you entered, to deposit or fetch the transfer files (database dumps, ZIP archives) instead of passing them through the REST API. The host key is pinned on first connection and a changed key aborts the transfer. Leave these fields empty and no SFTP connection is ever made.

3. A notification webhook (optional)

If you fill in a webhook URL in Settings, Miroir sends one HTTP POST to that address after each real push or pull. The body is JSON and contains only: the source site address, the event name, the operation type, the target site name, whether it succeeded, and the list of steps with their status. No credentials and no site content are included.

Leave the field empty and nothing is sent.

WordPress.org metadata

Plugin tags

Topics listed for this plugin in the WordPress.org directory.

  • database
  • deployment
  • migration
  • staging
  • sync
Compatibility & maintenance

Compatibility & maintenance

Tested with WP 7.1

Marked as tested with the current WordPress 7.1 release.

Current WordPress releaseWordPress 7.1
WordPress.org Tested up to7.1
Minimum requirementsWordPress 6.0 · PHP 8.1
Update activity9 Sept 20261mo ago

“Tested up to” is directory metadata supplied by the plugin author. WP PlugIndex does not turn an older declaration into a claim that the plugin is incompatible.

Changes recorded by WP PlugIndex

Recent tracked changes

Version1.5.01.5.1
Version1.4.51.5.0
Version1.4.41.4.5
Tracking & source

WP PlugIndex tracks public WordPress.org directory metadata and records selected version, compatibility and availability changes as they are detected.

Plugin watchlist

Watch this plugin

Sign in to your WP PlugIndex account or create a free account. Free accounts can watch up to 5 plugins and see what changed.

Watch limit

Watchlist limit reached

You have reached your current active watch limit.