Skip to content

Dashboard-Child Synchronization

Fresh

Source: MainWP Sync Documentation

How Sync Works

MainWP Dashboard communicates with child sites through HTTPS requests using cURL. Each sync request requires three parameters:

  1. Username - Administrator credentials for connection
  2. Function - The specific function to execute on the child site
  3. MainWP Signature - Authentication verification (must match or request fails)

Example Request

https://childsite.com/wp-admin/admin-ajax.php?user=demouser&function=stats&mainwpsignature=dgTOIUbQyBWvCh0pNhnwmxmHoeayfg34...

Data Retrieved

The get_site_stats() function in MainWP Child retrieves:

  • Plugin, theme, and WordPress core updates
  • Potentially abandoned plugins and themes
  • Site health metrics
  • Extension-specific information

Extension Data Hook

The mainwp-sync-others-data hook allows extensions to include data in sync requests. Supported plugins include:

BackWPup, BackupWordPress, BackupBuddy, Client Reports, WP Staging, WP Time Capsule, UpdraftPlus, Page Speed, WP Rocket

Security Mechanism

Asymmetric cryptography: One key encrypts data; only its corresponding key decrypts it, ensuring only authorized Dashboard instances can communicate with child sites.

Performance Management

Synchronizing requires CPU resources. To mitigate availability issues:

  • Expand server resources
  • Reduce Maximum simultaneous sync requests in MainWP Settings > Advanced Settings