1. Home
  2. Docs
  3. LearnDash Addons
  4. LearnDash Course Import/Export

LearnDash Course Import/Export

With the LearnDash Course Import/Export add-on, creating, updating, migrating, and backing up courses has never been this easy! Export courses into a .xls or .xlsx file with a single click. Plus, create and edit courses, lessons, and topics directly from a simple template, importing them into any LearnDash site in record time.

Below, you’ll find the instructions you need to follow to install, configure, and import/export courses with this add-on.

Video Tutorial

Watch the tutorial video below for a quick walkthrough of the add-on’s features and setup process.

For detailed instructions, please continue reading the full documentation. If you still have any questions, feel free to submit a support ticket.

Installation

  • Install the LearnDash LMS plugin & activate it
  • Install LearnDash Course Import/Export and activate it
  • A new Course Import/Export menu will appear under the LearnDash LMS menu
LD Course Import Export – Main Menu

Activate Your License Key

The license key can be configured from the License Settings tab, found on the main Course Import/Export menu. License keys will be sent to your email address when you purchase the addon.

Insert your license key in the field and then click on Activate.

LD Course Import Export – License

General Settings

To configure the add-on’s settings, select Course Import/Export from the LearnDash menu on the WordPress dashboard.  You will find all setting options under the General Settings tab.

LearnDash Course Import Export – General Settings

Minimum role to Import courses

Here, you can set the minimum user role that will be able to import/export courses. Currently, you can choose user roles between administrator, editor & author.

Publish Courses on Import

Enable this toggle if you want to publish the courses on import. By default, the imported courses’ status will be Pending.

Update duplicate lessons or Topics on Import

Enabling this toggle will update the duplicate lessons and topics when you import a course.

Enable this option to check during import if the featured image already exists in the database from previous imports. Please note that enabling this option may slow down the import process.

Enable Debug Logs

Enabling the “Enable Debug Logs” toggle in the general settings tab allows the system to generate import/export debug logs, which offer valuable information and insights for troubleshooting any potential issues. Once Debug logs are enabled, two new tabs will appear: “Debug logs” and “Systems Information“. The “Debug logs” tab displays detailed logs that provide a comprehensive overview of the user’s process, while the “System Information” tab showcases your system specifications.

LearnDash Course Import Export – Debug Logs
LearnDash Course Import Export – System Information

Enable Google Sheet Compatibility

Here, you can enable this option to import courses from a Google Sheet.

Google Sheet Schedule

Here, you can select the Google Sheet import schedule. Based on the interval, a cron job will run and create/update the LearnDash courses, lessons, and topics based on the columns and records in the Excel sheet. You can select from the following options:

  • Every minute
  • Once Hourly              
  • Twice Daily
  • Once Daily
  • Once Weekly    

Google Sheet import

Here, you are supposed to provide the Google sheet import link from which you want to check and import/update the LearnDash Course-related information. The URL link will be in the format:
https://docs.google.com/spreadsheets/d/1nw/edit?usp=sharing”  

To create your own LearnDash Course Importing Google sheet, the steps are as follows:

1- Navigate to the “Import Course” tab and click on the “Copy Template to Google Sheet” button. Here, you will be asked to make your own online copy of the course-importing Excel sheet into your Google account.

LearnDash Course Import Export – Sheet

2- Finally, click the “Make a copy” button.

3- Once you have created your own course-importing Excel sheet. Click on the “Share” button. Provide restricted access to the Excel sheet with viewer role permissions.

LearnDash Course Import Export – Google Sheet

4- Click the “Copy link” button to copy the Excel sheet URL. 

5- Finally, navigate back to the “General Settings” tab and paste the Excel sheet URL in the “Google Sheet import” option text field and click the “Update Settings” button.

Import Google Sheet Now

Here, you can click the “Import Now” button to manually run the Google Sheet import function to import/update course(s) from Google Sheet. After the function has been executed, your course-related information/content will be updated.

Export a Single Course

Select “Courses” from the LearnDash menu. An Export button will appear in the courses table, under the “Course Export” column. 

To export a course, simply click on the export button. The course will be downloaded as an .xls or .xlsx file. Both course content and course settings will be exported in the file and can be imported to another LearnDash site using this add-on.

LD Course Import Export – Export Single Course

Export Multiple Courses

To export multiple courses into a single file, simply select the courses you want to export and then select the “Export to xls”  or “Export to xlsx ” options from the “Bulk Options” field.

Complete courses, including course content and settings,  will be downloaded as an .xls or .xlsx file, which can be imported to another LearnDash site using this add-on.

LD Course Import Export – Export Multiple Courses

Import a Single Course

To import a course, navigate to the “Import Course” tab from the Course Import/Export menu located under the main LearnDash LMS menu. To complete the import, select the completed template’s .xls or .xlsx file and click on the import course button.

LD Course Import Export – Import Course

Import Multiple Courses

You can import several courses at once using a single template file by adding multiple entries on the “Courses” sheet of the template. When importing lessons and topics, simply specify the title of the course they are assigned to from the “Course” column on the “Lessons” and “Topics” sheets.

Then, to complete the import process, go to the “Import Course” tab from the course Import/Export menu located under the main LearnDash LMS plugin menu. Here, select the Microsoft Excel .xls or .xlsx file containing multiple courses and click on the “import course” button.

After importing the file, you will see a list of all imported courses. Next, select a specific course to configure its settings and publish.

LD Course Import Export – Import Multiple Courses

LearnDash Course Import/Export Template Guide

Click here to view the complete template guide, including column details.


FAQs

Does the Add-on support all course types (pricing) present in LearnDash?

Yes. The add-on supports all LearnDash course types, including the recurring course type as well.

Which Excel extension does this add-on support?

This add-on supports the .xls and .xlsx file extensions.

Where can I find the standard XLS template?

The plugin zip file includes a standard XLS template for import. The standard XLS template is located inside the zip file provided here: learndash-course-import-export > sample-import-files.

How can I export a course?

To export any course, you have to go to the “Courses” page under the LearnDash LMS menu. Next, click on the “Export” button located in the “Course Export” column.

Can I export lessons and topics without exporting an entire course?

Currently, the add-on only supports exports for complete courses.

Can I import or export multiple courses at a time?

Yes, the add-on supports imports and exports for multiple courses. 

Will the course, lessons, and topics be successfully imported if the Shared Course Steps are enabled from the course settings?

Yes, you can successfully import and export the courses with the “shared course steps” option enabled.

Why does the course’s import progress bar get infinitely stuck?

The import progress bar might get stuck when importing a large number of courses at once. To resolve this issue, please contact your hosting provider and ask them to apply the following changes to server configurations:

  • upload_max_filesize = 32M
  • post_max_size = 48M
  • memory_limit = 256M
  • max_execution_time = 600
  • max_input_vars = 1000 
  • max_input_time = 400

If a course, lesson, or topic has text, images, and a video lesson, how are these added to the spreadsheet, and how would one control formatting/appearance?

Images and videos can be added using HTML tags. <img> for the images, <p> for text  and <video> and for the videos. Using these tags, you can add images and videos along with the text.

How does your addon handle the order of Courses, Lessons, and Topics? Can You Provide An Example Of How This Works?

Our addon maintains the order in which Courses, Lessons, and Topics are created, irrespective of how they are structured in the course builder. For example, if Lesson 2 is created before Lesson 1 on your website, the export sequence will be Lesson 2 followed by Lesson 1.

Why do you recommend that admins review their content before importing it to a second site?

We recommend that admins review their content before importing for a specific reason. The content export order is determined by the creation order, not the order in the course builder. By doing this review, it ensures that admins are well-informed about the content sequence and how it will be imported into the second site.

Can we rearrange the lessons in a specific order?

Certainly! You have the flexibility to arrange lessons in your preferred order by manually moving them up or down within the exported sheet before you begin the import process.

How can we easily identify the order of lessons?

You can identify the order by examining the “ID” column in the export file, which provides a clear reference for each lesson’s position.

What happens if I import a course without enabling the addon’s “publish” toggle, and later, upon publishing, the status of its lessons and topics remains pending?

It’s important to note that when a course is imported as pending, along with its lessons and topics, the default behavior of LearnDash is to maintain the pending status even upon publishing. To address this behavior and ensure proper import, follow these steps:

  1. Make sure the course you plan to import is not already present on your site. If it is, delete this course along with its existing lessons, topics, and then empty the trash as well.
  2. Enable the “Publish Courses on Import” option in the General Settings of our addon.
  3. Proceed with importing your course using our addon.

By following these steps, all course content, including lessons, should be published upon the initial import, preventing any pending status.

Does LearnDash Course Import Export support any page builder?

Our addon supports import and export with Elementor and Beaver Builder for the generic blocks only. To edit the Elementor content from the sheet, you can update it within the “_elementor_data” column, and to edit the Beaver Builder content, you can modify the “_fl_builder_data”  column.

Can we also import/export the LearnDash Quizzes with this add-on?

This add-on is designed specifically for importing and exporting Courses, Lessons, and Topics. To manage quizzes, please use our LearnDash Quiz Import Export add-on.

What happens if the destination site already has the same course, lesson, or topic ID during import?

When importing courses, lessons, or topics, the system generates new database entries for each item with unique IDs. This ensures that all internal relationships (such as which lessons are linked to which course) are correctly updated during the import process. As a result, IDs are automatically regenerated to avoid any conflicts between the source and destination sites.


Changelogs

1.4.13

  • Fix: Updated admin default tab behavior for non-admin users to open the import tab.
  • Fix: Fixed featured image import flow by reusing existing images when enabled and removing debug logging.

1.4.12

  • Fix: Addressed security vulnerabilities and improved overall plugin security.

1.4.11

  • New: Added Google Sheet integration allowing automatic data imports at scheduled intervals.
  • Fix: Resolved an issue where course settings were not being updated.

1.4.10

  • Fix: Fixed an issue preventing proper validation of Excel files before import.

1.4.9

  • Fix: Fixed the LearnDash lesson and topic linking issue.

1.4.8

  • Fix: Fixed the LearnDash course sorting issue.

1.4.7

  • Fix: Fixed duplicating images in media library.

1.4.6

  • New: Minor Ui Changes.

1.4.5

  • Fix: Added php spreadsheet library v1.18.0 for backward compatibility.

1.4.4

  • Fix: Updated php spreadsheet library to v1.29.6.
  • Fix: Removed depreciated function get_page_by_title.
  • New: Search existing featured image in database on import.

1.4.3

  • New: Course import export with beaver builder addon support.

1.4.2

  • Fix: Import Export courses with special characters in names.

1.4.1

  • Fix: Shared course steps attachment on course import.

1.4.0

  • New: Course import export with Elementor support.

1.3.5

  • Fix: Title issues due to special characters.

1.3.4

  • New: Update PHP spreadsheet library 1.18.0

1.3.3

  • Fix – Update existing course status.
  • Fix – Update existing lessons and topics.

1.3.2

  • Fix – Course import when shared course steps enabled.
  • Fix – Export all lessons.

1.3.1

  • Fix – Duplicate images upon import.

1.3.0

  • Fix – Addressed issues with plugin logging settings.
  • New – Added button to clear logs under logs tab.

1.2.9

  • New – Added support for additional LearnDash course fields during import/export.
  • New – Improved the plugin’s user interface to enhance the overall user experience.
  • New – Implemented a logging system to track activities performed with the addon.
  • Fix – Resolved issues related to the association of lessons and topics during the import process.
  • Fix – Addressed minor problems and warnings within the plugin.
  • Fix – Updated the Excel template used by the plugin.
  • Fix – Enhanced the codebase and optimized its performance.

1.2.8

  • New – Update duplicate lessons/topics option is added in plugin settings.
  • Fix – Plugin documentation link updated.
  • Fix – Recurring courses values on import/export.
  • Fix – Issues with exporting data into wrong column.
  • Fix – Change format of prerequisite courses from course ID to course names on import/export.
  • Fix – Resolved lesson and topics association issue when shared course steps option is enabled.

1.2.7

  • Fix – Compatibility issue with PHP version 8.
  • Fix – Resolved lesson and topics association issue when the shared course steps option is enabled.

1.2.6

  • Fix – Resolved topics association issue with course and lesson on import.
  • Fix – Added plugin settings description.

1.2.5

  • Fix – Course and Quiz linking.
  • Fix – Resolved import/export problems related to shared course steps.
  • Fix – Improved the user interface and experience of the plugin settings page.
  •  Fix – Upgraded the Excel template used in the plugin.

1.2.4

  •  Fix – Course duplication issue.
  • Fix – Issues with categories and tags.
  • Fix – Editor / Author LearnDash menu setup.
  • New – Added setting for publishing course on import.

1.2.3

  • New – Import/Export tags for courses/lessons/topics.
  • Fix – UI Improvements.

1.2.2

  • New – Added settings for the minimum role to import courses.

1.2.1

  • New – Added support for shared course steps in Import/Export.

1.2.0

  • New – Import/Export category and featured image for courses / lessons / topics.

1.1.1

  • Fix – Courses, Lessons, and Topics order of list after import.

1.1.0

  • New – Import/Export course, lesson, and topic settings.

1.0.2

  • Fix – Export button UI on course listing page.

1.0.1

  • Fix – License issue.
  • Fix – Minor issues.

1.0.0

  • Initial Release.

Articles

How can we help?