WordPress Plugin

Automatic cold backups for your WordPress site with database, uploads, plugins, and themes support.

v1.3.0Updated 2026-01-01

Requirements

  • WordPress 5.8 or higher
  • PHP 7.4 or higher
  • LOX API key (get one at backlox.com)

Installation

  1. Download the plugin

    Click the download button above to get the latest version.

  2. Upload to WordPress

    Go to Plugins → Add New → Upload Plugin and select the zip file.

  3. Activate the plugin

    Click "Activate" after the plugin is installed.

  4. Configure your API key

    Go to LOX Backup in the admin menu and enter your API key.

Configuration

LOX Backup WordPress Settings

LOX Backup Settings page in WordPress admin

API Settings

SettingDescription
API KeyYour LOX API key. Get it from backlox.com
API URLFor self-hosted LOX instances. Default: https://backlox.com/api

Backup Components

ComponentDescription
DatabaseAll WordPress tables (posts, users, options, etc.)
UploadsMedia library files (wp-content/uploads)
PluginsAll installed plugins (wp-content/plugins)
ThemesAll installed themes (wp-content/themes)

Component-Based Backups

Configure different backup schedules for each component type:

ComponentDefault ScheduleDescription
ContentWeeklyPosts, pages, media library
TransactionalDailyOrders, users, sessions
FilesWeeklyUploads, themes, plugins
ConfigDailySettings, options

Schedule Options

  • Hourly - Run backup every hour
  • Twice Daily - Run backup every 12 hours
  • Daily - Run backup once per day (recommended)
  • Weekly - Run backup once per week
  • Monthly - Run backup once per month
  • Disabled - Only manual backups

Usage

Manual Backup

Click the "Backup Now" button on the LOX Backup settings page to start a manual backup. The backup process will run in the background and you'll see a success message when complete.

Testing Connection

Use the "Test Connection" button to verify your API key is working correctly. You should see a success message with your tenant name.

Restoring a Backup

LOX Backup WordPress Backups List

Backup history with restore and download options

To restore from a backup:

  1. Navigate to backup history

    Go to the Backups tab to see all available backups.

  2. Click Restore

    Click the "Restore" button next to any completed backup.

  3. Confirm the restoration

    A confirmation dialog will appear. Type RESTORE to confirm. This safety measure prevents accidental data loss.

  4. Wait for completion

    The restoration will begin and you'll be notified when complete.

Warning: Restore overwrites data

Restoring a backup will replace your current site data with the backup contents. This action cannot be undone. Always create a fresh backup before restoring.

PULL Mode (New in v1.3.0)

New Feature: Server-Initiated Backups

PULL mode allows LOX to initiate backups remotely, providing centralized scheduling, better reliability, and active monitoring of your WordPress sites.

How PULL Works

Instead of waiting for WordPress to push backups, LOX actively connects to your site:

AspectPUSH (Traditional)PULL (New)
Schedule controlDistributed (each site)Centralized (LOX backend)
ReliabilityDepends on WP cronLOX controls retries
MonitoringPassive (wait for upload)Active (confirm success)
Site overheadCron execution requiredOn-demand only

Enabling PULL Mode

  1. Go to LOX Backup settings

    Navigate to the PULL tab in the plugin settings.

  2. Enable PULL mode

    Toggle "Enable PULL Backups" to generate a secure token.

  3. Register site in LOX dashboard

    Add your site URL and PULL token in the LOX dashboard under CMS Sites.

  4. Configure schedule

    Set your backup schedule centrally from the LOX dashboard.

PULL API Endpoints

The plugin exposes REST API endpoints for LOX to communicate with your site:

POST /wp-json/lox/v1/pull/backup    # Trigger backup generation
GET  /wp-json/lox/v1/pull/status    # Get site status and sizes
GET  /wp-json/lox/v1/pull/download  # Download generated backup
POST /wp-json/lox/v1/pull/token/refresh  # Regenerate PULL token

Troubleshooting

Backup times out

For large sites, increase PHP max_execution_time and memory_limit in your php.ini. The plugin sets a 1-hour timeout for backups.

Connection failed

Verify your API key is correct and your server can reach backlox.com/api. Some hosting providers block outbound HTTPS requests.

Scheduled backups not running

WordPress cron requires site traffic to trigger. Consider setting up a real cron job using wp-cron.php.

Hooks & Filters

The plugin provides hooks for customization:

// Filter backup components
add_filter('lox_backup_components', function($components) {
    return $components;
});

// Filter files to backup
add_filter('lox_backup_files', function($files, $temp_dir) {
    return $files;
}, 10, 2);

// Action after backup completes
add_action('lox_backup_completed', function($backup_data) {
    // Send notification, update logs, etc.
});