Video Synchronization
Vimeify automatically keeps your videos synchronized between Vimeo and WordPress using Action Scheduler for reliable background processing.
Sync Types
Vimeify runs two types of automatic synchronization:
Metadata Sync
Updates video information from Vimeo to WordPress.
Frequency: Every 10 minutes
What it syncs:
- Video title
- Video description
- Duration
- Dimensions (width/height)
- Upload date
- Embed link
- Thumbnail images
- Playability status
How it works:
- Fetches 100 videos per page from Vimeo API
- Updates existing videos or creates new ones (based on settings)
- Saves progress after each page
- Resumes from last page on next run
- Resets to page 1 when complete
Status Sync
Checks if videos still exist on Vimeo and removes deleted ones.
Frequency: Every 20 minutes
What it does:
- Checks each local video against Vimeo API
- Deletes videos that return 404 from Vimeo
- Preserves videos that still exist
How it works:
- Loads all local videos
- Checks one video at a time (1 API call per video)
- Saves position after each check
- Respects API quota limits
- Resets to start when complete
Sync Settings
Configure sync behavior in Vimeify → Settings → Sync Settings.
Sync Behavior
Choose how automatic sync handles videos:
Update Existing Videos Only (Default)
Only syncs metadata for videos already in WordPress.
Use when:
- You manually upload videos through WordPress
- You want control over which videos appear
- You have limited API quota
Sync All Videos from Vimeo
Creates new video posts for all videos in your Vimeo account.
Use when:
- You upload videos directly to Vimeo
- You want all Vimeo videos in WordPress
- You're migrating from another system
WARNING
This mode will create posts for ALL videos in your Vimeo account, including private videos if your access token has permission.
Monitoring Sync Status
Via WordPress Admin
View scheduled sync tasks by clicking View Sync Status & Scheduled Tasks in Sync Settings.
This shows Action Scheduler interface with:
- Next run time for each sync
- Execution history
- Any failed tasks
- Detailed logs
Via WP-CLI
Check sync status from command line:
wp vimeify sync infoOutput example:
=== Vimeify Sync Status ===
Scheduled Actions:
- Metadata Sync (every 10 minutes): in 3 minutes
- Status Sync (every 20 minutes): in 15 minutes
Metadata Sync State:
- Page: 2 / 5 (40%)
- API calls remaining: 842
Status Sync State:
- Position: 150 / 500 (30%)
- Last synced: 5 minutes ago
Sync Behavior:
- Mode: Update existing videos onlyManual Sync
Via WP-CLI
Trigger sync manually when needed:
# Sync metadata
wp vimeify sync metadata
# Check for deleted videos
wp vimeify sync status
# Run both
wp vimeify sync all
# Reset and start fresh
wp vimeify sync all --freshSee CLI Commands for complete reference.
Force Full Resync
To completely resync all videos:
- Via CLI (recommended):
wp vimeify sync all --fresh- Via Admin:
- Go to Tools → Scheduled Actions
- Search for "vimeify"
- Cancel pending actions
- Sync will restart on next scheduled run
Troubleshooting
Sync Not Running
Check Action Scheduler:
wp action-scheduler run --hooks=vimeify_action_metadata_syncVerify cron is working:
wp cron event list | grep vimeifySync Stuck
Reset sync state:
# Reset metadata sync
wp vimeify sync metadata --fresh
# Reset status sync
wp vimeify sync status --freshAPI Quota Exceeded
If you hit rate limits:
- Wait 1 hour for quota to reset
- Sync will automatically resume
- Consider upgrading Vimeo plan for higher limits
Check current quota:
wp vimeify sync infoVideos Not Syncing
Check sync behavior setting:
- Existing only: Won't create new videos
- Sync all: Will create videos for everything on Vimeo
Verify API permissions:
- Access token needs
publicandprivatescopes - Check in Vimeo developer portal
Post Dates Incorrect
Vimeify automatically syncs post dates with Vimeo upload dates. If dates are wrong:
- Run metadata sync to update:
wp vimeify sync metadata- Post dates will match Vimeo's
created_time
Technical Details
Action Scheduler vs WP Cron
Vimeify uses Action Scheduler instead of WordPress cron for reliability:
| Feature | Action Scheduler | WP Cron |
|---|---|---|
| Reliability | High | Depends on traffic |
| Recovery | Automatic retry | Can miss executions |
| Monitoring | Built-in UI | Limited |
| Logging | Detailed | Basic |
| Concurrent | Managed | Can conflict |
Sync State Storage
Sync progress is stored in WordPress options:
vimeify_last_metadata_sync- Current page, total pages, API callsvimeify_last_status_sync- Current position, video list, last run
These ensure sync can resume after:
- Server restarts
- Plugin updates
- Temporary failures
Background Processing
All sync operations run in the background:
- Action Scheduler queues tasks
- Tasks execute on schedule (not on page load)
- Progress is saved incrementally
- WordPress remains responsive
- Users aren't affected
Best Practices
For Small Sites (< 100 videos)
- Use default settings
- Both sync types will complete quickly
- Manual sync rarely needed
For Medium Sites (100-1000 videos)
- Monitor sync progress occasionally
- Use CLI for bulk operations
- Consider "existing only" mode if you control uploads
For Large Sites (1000+ videos)
- Use "existing only" mode unless needed
- Monitor API quota usage
- Use WP-CLI for maintenance
- Consider Vimeo Pro for higher API limits
- Schedule manual syncs during low-traffic periods
Best Sync Schedule
Default schedule is optimized for most sites:
- Metadata: Every 10 minutes (fast, efficient)
- Status: Every 20 minutes (slower, more API calls)
- Cleanup: Every hour (removes temp files)
TIP
Don't change sync intervals unless you have specific needs. The defaults balance freshness with API quota usage.
Related
- CLI Commands - Manual sync via WP-CLI
- API Reference - PHP functions for sync
- Hooks & Filters - Customize sync behavior