Skip to main content

Migration guide

This guide covers upgrading from Basic to Pro and migrating from other download plugins. It does not mix version-specific steps; follow the sections that apply to your case.

Upgrading from Basic to Pro

Before You Upgrade

Backup Your Site:

  1. Backup your WordPress database
  2. Backup your WordPress files
  3. Test backup restoration

Check Requirements:

  • WordPress 5.0+
  • WooCommerce 3.0+
  • PHP 7.4+
  • Sufficient disk space for tracking logs

Upgrade Process

Step 1: Purchase Pro License

Visit WP Enhanced to purchase.

Step 2: Download Pro Version

  1. Log in to your WP Enhanced account
  2. Go to Downloads
  3. Download the Pro plugin ZIP file

Step 3: Deactivate Basic Version

  1. Go to Plugins > Installed Plugins
  2. Find "Free Downloads for WooCommerce"
  3. Click Deactivate
  4. Do NOT delete the plugin yet

Step 4: Install Pro Version

  1. Go to Plugins > Add New
  2. Click Upload Plugin
  3. Choose the Pro ZIP file
  4. Click Install Now
  5. Click Activate Plugin

Step 5: Verify Settings

  1. Go to WP Enhanced > Free Download Woo
  2. Verify all settings transferred correctly
  3. Check product selections
  4. Test download functionality

Step 6: Remove Basic Version

  1. Go to Plugins > Installed Plugins
  2. Find the old Basic version
  3. Click Delete

What Gets Preserved

Settings:

  • General settings ✅
  • Button styling ✅
  • Product selections ✅
  • Login requirements ✅
  • Archive display settings ✅

Data:

  • Download counts ✅
  • Product meta ✅

What's New in Pro

New Features:

  • Download tracking
  • Download limits
  • Email capture
  • MailChimp integration
  • Statistics & reports
  • Account history
  • PDF watermarking
  • Advanced compatibility

New Settings Pages:

  • Pro Edition tab
  • Tracking settings
  • Limits settings
  • Newsletter settings
  • Statistics page

Post-Upgrade Configuration

Enable Tracking:

  1. Go to WP Enhanced > Free Download Woo
  2. Click Tracking tab
  3. Check "Enable download tracking"
  4. Configure email capture if desired
  5. Click Save Changes

Configure Limits:

  1. Click Download Limits tab
  2. Check "Enable download limits"
  3. Set limit type, frequency, and amount
  4. Click Save Changes

Set Up MailChimp:

  1. Click Newsletter tab
  2. Enter MailChimp API key
  3. Select list
  4. Configure tags
  5. Click Save Changes

Migrating from Other Plugins

From WooCommerce Download Manager

Step 1: Export Data

No direct export available. Note your settings manually.

Step 2: Install Free Downloads

  1. Install and activate Free Downloads for WooCommerce
  2. Keep Download Manager active temporarily

Step 3: Configure Products

  1. Go to each product
  2. Ensure product is:
    • Downloadable ✅
    • Virtual ✅
    • Free (£0.00) ✅
  3. Add downloadable files
  4. Save product

Step 4: Configure Settings

  1. Go to WP Enhanced > Free Download Woo
  2. Configure general settings
  3. Set login requirements
  4. Customize button styling

Step 5: Test

  1. Test downloads on frontend
  2. Verify all files download correctly
  3. Check email capture (Pro)
  4. Verify limits work (Pro)

Step 6: Deactivate Old Plugin

  1. Deactivate WooCommerce Download Manager
  2. Test site thoroughly
  3. Delete old plugin if everything works

From Easy Digital Downloads

Compatibility Note: EDD and WooCommerce use different systems. Migration requires manual product recreation.

Step 1: Export EDD Products

  1. Go to Downloads > Tools > Export
  2. Export all downloads
  3. Save CSV file

Step 2: Create WooCommerce Products

For each EDD download:

  1. Create new WooCommerce product
  2. Set as Downloadable and Virtual
  3. Set price to £0.00
  4. Add downloadable files
  5. Publish product

Step 3: Install Free Downloads

  1. Install Free Downloads for WooCommerce
  2. Configure settings
  3. Test downloads

Step 4: Migrate Customer Data (Optional)

If you have Pro edition:

  1. Export EDD customer emails
  2. Import to MailChimp
  3. Tag as "Migrated from EDD"

From Download Monitor

Step 1: Note Current Setup

  • List all downloadable products
  • Note download counts
  • Export customer data if available

Step 2: Install Free Downloads

  1. Install and activate plugin
  2. Configure settings

Step 3: Recreate Products

  1. Create WooCommerce products for each download
  2. Set as free, downloadable, virtual
  3. Add files
  4. Publish

Step 4: Test and Switch

  1. Test all downloads
  2. Deactivate Download Monitor
  3. Delete if everything works

Data Migration

Preserving Download Counts

Manual Method:

// Add to functions.php temporarily
function migrate_download_counts() {
$products = get_posts(array(
'post_type' => 'product',
'posts_per_page' => -1
));

foreach ($products as $product) {
// Get old count (adjust meta key as needed)
$old_count = get_post_meta($product->ID, 'old_download_count', true);

// Set new count
if ($old_count) {
update_post_meta($product->ID, 'somdn_dlcount', $old_count);
}
}
}

// Run once, then remove
add_action('init', 'migrate_download_counts');

Importing Customer Emails

CSV Format:

email,first_name,last_name,product_id
[email protected],John,Doe,123

Import Script:

function import_customer_emails() {
$file = '/path/to/emails.csv';
$csv = array_map('str_getcsv', file($file));
array_shift($csv); // Remove header

foreach ($csv as $row) {
list($email, $fname, $lname, $product_id) = $row;

// Create download log (Pro only)
$post_id = wp_insert_post(array(
'post_type' => 'somdn_tracked',
'post_status' => 'publish',
'post_title' => 'Imported Download'
));

if ($post_id) {
update_post_meta($post_id, 'somdn_user_email', $email);
update_post_meta($post_id, 'somdn_user_fname', $fname);
update_post_meta($post_id, 'somdn_user_lname', $lname);
update_post_meta($post_id, 'somdn_product_id', $product_id);
update_post_meta($post_id, 'somdn_user_id', 0);
}
}
}

Troubleshooting Migration

Settings Not Transferred

Solution:

  1. Check if old plugin was properly deactivated
  2. Manually reconfigure settings
  3. Clear all caches

Products Not Showing

Check:

  1. Product is Downloadable ✅
  2. Product is Virtual ✅
  3. Product price is £0.00 ✅
  4. Product is Published ✅
  5. Product is included in settings ✅

Downloads Not Working

Check:

  1. Files exist in correct location
  2. File permissions are correct (644)
  3. WooCommerce download method is set
  4. No conflicting plugins active

Email Capture Not Appearing

Check:

  1. Pro edition installed ✅
  2. Tracking enabled ✅
  3. Email capture enabled ✅
  4. Cache cleared ✅

Limits Not Enforcing

Check:

  1. Limits enabled ✅
  2. Tracking enabled ✅
  3. Correct limit type selected ✅
  4. Products included in limits ✅

Rollback Procedure

If you need to rollback to Basic edition:

Step 1: Backup Pro Settings

Take screenshots of all Pro settings pages.

Step 2: Export Data

If using Pro features:

  1. Export statistics
  2. Export download logs
  3. Save MailChimp configuration

Step 3: Deactivate Pro

  1. Deactivate Pro plugin
  2. Do not delete yet

Step 4: Install Basic

  1. Install Basic edition
  2. Activate plugin
  3. Reconfigure settings

Step 5: Test

  1. Test basic downloads
  2. Verify settings
  3. Check product pages

Step 6: Remove Pro

Only after confirming Basic works:

  1. Delete Pro plugin
  2. Clean up Pro database entries (optional)

Database Cleanup

Remove Pro Data

Warning: This permanently deletes all tracking data.

function cleanup_pro_data() {
global $wpdb;

// Delete download logs
$wpdb->query("DELETE FROM {$wpdb->posts} WHERE post_type = 'somdn_tracked'");

// Delete orphaned meta
$wpdb->query("DELETE FROM {$wpdb->postmeta} WHERE post_id NOT IN (SELECT ID FROM {$wpdb->posts})");

// Delete Pro options
delete_option('somdn_pro_track_settings');
delete_option('somdn_pro_basic_limit_settings');
delete_option('somdn_pro_newsletter_mailchimp_settings');

// Clear user meta
$wpdb->query("DELETE FROM {$wpdb->usermeta} WHERE meta_key LIKE 'somdn_user_limit_%'");
}

Optimize Database

After migration:

-- Optimize tables
OPTIMIZE TABLE wp_posts;
OPTIMIZE TABLE wp_postmeta;
OPTIMIZE TABLE wp_options;

Best Practices

Before Migration

  • Full site backup
  • Test on staging site first
  • Document current settings
  • Export important data
  • Check plugin compatibility
  • Review system requirements

During Migration

  • Follow steps in order
  • Don't skip verification steps
  • Test each feature
  • Clear all caches
  • Check error logs
  • Monitor performance

After Migration

  • Verify all features work
  • Test with different user roles
  • Check mobile compatibility
  • Monitor error logs
  • Update documentation
  • Train team on new features

Getting Help

If you encounter issues during migration:

  1. Check Troubleshooting Guide
  2. Review Error Logs
  3. Contact Support
  4. Provide migration details:
    • Previous plugin name and version
    • Current plugin version
    • WordPress version
    • WooCommerce version
    • Error messages
    • Steps already taken

What's Next