SOP: Initial Setup
FreshComplete first-time setup of MainWP Dashboard and your first child site.
Prerequisites
- [ ] WordPress 6.2+ installed on Dashboard server
- [ ] PHP 7.4+ with OpenSSL and cURL extensions
- [ ] Admin access to Dashboard WordPress
- [ ] Admin access to at least one child WordPress site
- [ ] Both sites accessible via HTTPS
Step 1: Install MainWP Dashboard
- Log into Dashboard WordPress admin
- Navigate to Plugins → Add New
- Search for "MainWP Dashboard"
- Click Install Now → Activate
- The MainWP Setup Wizard launches automatically
Step 2: Run Setup Wizard
The wizard walks through:
- Welcome — Overview of MainWP
- Installation — System check (PHP, OpenSSL, memory)
- Add Site — Connect your first child site
- Monitoring — Enable uptime monitoring (optional)
- Optimization — Configure cron, caching
- Complete — Finish and access Dashboard
Step 3: Install MainWP Child on Child Site
- Log into the child WordPress admin
- Navigate to Plugins → Add New
- Search for "MainWP Child"
- Click Install Now → Activate
- Go to Settings → MainWP Child
- Optionally set a Unique Security ID (record this — you'll need it)
Step 4: Connect Child Site from Dashboard
- In MainWP Dashboard, go to MainWP → Add New Site
- Enter:
- Site URL:
https://your-child-site.com - Admin Username: The WordPress admin username on the child site
- Unique Security ID: (if you set one in Step 3)
- Site URL:
- Click Add Site
- Wait for connection verification (green checkmark)
Step 5: Initial Sync
- Go to MainWP → Sites → Manage Sites
- Select your new site
- Click Sync to pull current site data
- Verify all data appears (plugins, themes, WordPress version)
Step 6: Configure Dashboard Settings
- MainWP → Settings → General
- Set time zone
- Configure notification email
- MainWP → Settings → Monitoring
- Enable uptime checks (recommended)
- Set check interval (default: 5 minutes)
- MainWP → Settings → Advanced
- Set maximum simultaneous requests (default: 4)
- Configure sync frequency
Verification
- [ ] Dashboard shows connected site with green status
- [ ] Sync data is populated (plugins, themes, version info)
- [ ] Uptime monitoring is active (if enabled)
- [ ] No error messages in Dashboard overview
Troubleshooting
| Issue | Fix |
|---|---|
| "Child plugin not detected" | Verify MainWP Child is activated |
| "Security ID mismatch" | Match IDs on both Dashboard and child |
| OpenSSL warning | Install php-openssl extension |
| Memory warning | Increase memory_limit to 256M+ |
| Timeout during connection | Increase max_execution_time to 300 |