Description
Evolve’s LearnDash to Lifter helps you move LearnDash course content into LifterLMS using batch processing to reduce PHP timeouts on larger sites.
What gets migrated:
- Courses (title, content, excerpt, featured image, and available mapped meta)
- Lessons (linked to the migrated courses)
- Topics (migrated as related LifterLMS lesson content where supported)
- Quizzes (linked to the migrated courses)
- Quiz questions and answers (when LearnDash quiz tables are available)
- Mapped course and lesson settings that have LifterLMS equivalents
Key Features:
- Batch processing (20 courses per batch) to help avoid PHP timeouts
- Real-time progress bar and activity log
- Nonce-secured AJAX requests with capability checks
- Input sanitization and output escaping
- Reset and retry support
- Translation ready (text domain: evolve-learndash-to-lifter)
Requirements:
- LearnDash LMS must be installed and active
- LifterLMS must be installed and active
Always run on a staging site first and take a full backup before migrating a live site.
Installation
- Upload the plugin folder to
/wp-content/plugins/ - Activate the plugin through the Plugins menu in WordPress
- Go to Evolve’s LearnDash to Lifter in the admin sidebar
- Select the courses to migrate and click Start Migration
- Wait for the progress bar to reach 100%
FAQ
-
Will this overwrite existing LifterLMS content?
-
No. The migrator creates new LifterLMS posts and does not delete existing LifterLMS content.
-
What if migration stops halfway?
-
Click Reset and then Start Migration again. Batch processing helps reduce timeouts on large sites.
-
Is it safe to run on a live site?
-
We recommend running on a staging site first and taking a full backup before migrating.
-
How many courses can it handle?
-
The plugin uses batch processing so there is no fixed course limit. Large course libraries have been tested successfully.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Evolve's LearnDash to Lifter” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Evolve's LearnDash to Lifter” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
2.3.7
- Standards: Slug set to evolve-learndash-to-lifter
2.3.6
- Standards: Removed load_plugin_textdomain() (handled by WordPress.org since 4.6)
- Standards: Plugin URI removed; Author URI retained
2.3.5
- Standards: Renamed plugin to Evolve’s LearnDash to Lifter
- Standards: Slug, main file, and text domain alignment
2.3.4
- Standards: Plugin name, main file, slug, and text domain alignment
2.3.3
- Standards: Renamed plugin display name and admin menu slug
2.3.2
- Security: Escape admin JS log output and AJAX error details
- Standards: Trademark-safe plugin display name
- Standards: Enqueue dedicated admin CSS instead of inline wp-admin styles
- Standards: Full GPLv2 LICENSE file
- Standards: Readme changelog structure and Tested up to update
- Improved: Safer quiz table existence checks before direct DB reads
- Improved: Complete JS i18n strings for admin UI text
2.3.1
- Fixed: Course titles not showing in selection list
- Fixed: Migration error — improved AJAX error reporting with exact server response
- Fixed: Added dependency check for LearnDash and LifterLMS before migration starts
- Improved: JS now shows exact HTTP error and server response for easier debugging
2.3.0
- Added: Full quiz settings migration (passing score, time limit, attempts, randomization)
- Added: Question answers migration with correct/incorrect mapping
- Added: All question types supported (MCQ, True/False, Essay, Fill-in-blank, Sort, Match)
- Added: Question hints and feedback messages migration
- Added: Course settings migration (access, pricing, expiry, prerequisites, capacity)
- Added: Lesson settings migration (video, drip content, force completion)
- Added: Certificate association migration
- Added: class-quiz-migrator.php for modular quiz handling
- Added: class-settings-migrator.php for modular settings handling
2.2.0
- Added: Course selection UI — choose which courses to migrate
- Added: Select All / Deselect All buttons
- Added: Selected courses counter
- Fixed: Plugin URI updated to elearningevolve.com
- Fixed: Author updated to eLearning Evolve
- Fixed: Version synced across all files
2.1.0
- Fixed: Removed @ error suppression — not allowed by WP.org
- Fixed: All AJAX actions now use unique ldlifter_ prefix
- Fixed: Added absint(), sanitize_text_field(), wp_kses_post() throughout
- Fixed: Added sanitize_key() on all meta keys
- Fixed: JS localized object renamed to ldlifterData (unique prefix)
- Added: languages/ folder for translation readiness
- Added: LICENSE file (GPL v2)
- Updated: readme.txt with full WP.org format
2.0.0
- Complete rewrite with batch processing
- Added progress bar, migration log, reset functionality
- Added nonce security and capability checks
- Added full support for topics, quizzes, quiz questions
- Fixed lesson duplication bug
1.0.0
- Initial release