The LearnDash Course Import/Export add-on uses a standard template to import and export courses, lessons, and topics. When exporting a course, its content is added to the corresponding fields on the spreadsheet file. Likewise, on import, the template should be filled with the necessary course content and settings, in the order and form outlined below:
“Course” Sheet
- Type
The first column on the “Course” sheet is the “Type” column. This column is used to specify the type of content being imported. Content types options include: course, lesson, and topic.
In this sheet, this field should be set to “course”.
- Course ID
This field will show the course ID when you will export any course.
- Category
Here you can add the categories of the course i.e in the example;
- Category A, Category A > Category B
Category A is parent & Category B is child while Category A > Category B shows their relation.
- Tag
Here you can add a single or multiple tags for your course. You can separate multiple tags by using commas.
- Title
This column holds the title of the course.
- Content
This column contains the content featured in the course description page.
Images, videos and text can be included in the content using HTML tags. To do so, use <img> for the images, <p> for text and <video> and for the videos.
- Course Image
Here you can add the featured image of the course. Simply add the link of the featured image in this column.
- Course Sections
Enter the course section related information. Section attributes include the following:
a) order
It is a number. It starts with 0 (as the section on the most top). Numbers starting from 1 onwards come below it.
b) ID
It is a 13 digit unique number.
c) post_title
It is the section name of the respective section and is in text format.
d) url
It is the URL of the respective section page but since sections do not have an individual page, it should always be be left as “Empty text”.
e) edit_link
It is the URL of the edit page of the respective section but since sections do not have an individual page, it should always be left as “Empty text”.
f) tree
It is an array (List of file/folder paths, or filename). Since sections in LearnDash don’t have any page/template files, It should always be left as “Empty Array”.
g) expanded
It tells if the section has sub-sections or not but since LearnDash does not have subsections, it should always be set to “false”.
h) type
It is the post type. It should always be set to “section-heading”.
Format (Single):
[{“order”:0,”ID”:1682519285317,”post_title”:”SECTION 1″,”url”:””,”edit_link”:””,”tree”:[],”expanded”:false,”type”:”section-heading”}]
Format (Multiple):
[{“order”:0,”ID”:1682519285317,”post_title”:”SECTION 1″,”url”:””,”edit_link”:””,”tree”:[],”expanded”:false,”type”:”section-heading”},{“order”:2,”ID”:1704272045978,”post_title”:”SECTION 2″,”url”:””,”edit_link”:””,”tree”:[],”expanded”:false,”type”:”section-heading”}]
- Course materials enabled
To enable course materials, add “On” in the field.
- Course Materials
Supporting materials for the course can be added as plain text or HTML.
- Course trial Price
For the recurring Access Type, enter the price for the trial period of the Course.
- Course trial duration t1
For the recurring Access Type, enter the duration for the trial period of the Course.
- Course trial duration p1
For the recurring Access Type, enter the period for the trial of the Course i.e. D for days, W for weeks, M for months or Y for years.
- Course price type
Here add the course price type i.e. subscribe, closed etc.
- Course price type paynow price
For the buy now Access Type, enter the course price.
- Course price type paynow enrollment url
For the buy now Access Type, enter the URL of the page you want to redirect your
enrollees after signing up for the specific course.
- Course price billing cycle
Set the number of course price billing cycle in numbers.
- Course no of cycles
Set the number of course cycles in numbers.
- Course price
Set the course price in numbers.
- Course price type subscribe billing cycle
For the recurring Access Type, enter the billing period i.e. D for days, W for weeks, M for months or Y for years.
- Course price type subscribe billing recurring times
For the recurring Access Type, set the times for which the billing cycle repeats.
- Course price type subscribe price
For the recurring Access Type, set the course price.
- Course price type subscribe enrollment url
For the recurring Access Type, enter the URL of the page you want to redirect your enrollees after signing up for the specific course.
- Course price billing t3
For the recurring Access Type, enter the duration for the billing.
- Course price billing p3
For the recurring Access Type, enter the billing period i.e. D for days, W for weeks, M for months or Y for years.
- Course price type closed custom button label
Here you can add a button label.
- Course price type closed custom button url
For the closed Access Type, enter the “Take this course” button URL.
- Course price type closed price
For the closed Access Type, set the course price.
- Requirements for enrollment
To select the “None” option of “Requirements for Enrollment”, keep the cell empty. Similarly, to select the “Prerequisite Courses” option, add “course_prerequisite_enabled”. Similarly, to select the “Course Points” option, add “course_points_enabled”.
- Course prerequisite enabled
To enable the course prerequisite, add “on” in this field.
- Course prerequisite
Add the IDs of single or multiple course prerequisites.
- Course prerequisite compare
In this field, to select “Any Selected” option, add “ANY”, or to select “All Selected” option, add “ALL”.
- Course points enabled
To enable the course points, add “ON” in this field.
- Course points
Add points in this field.
- Course points access
Add the points required to access course access.
- Expire access
To enable the course access expiration, add “ON” in this field.
- Expire access days
Set the number of days a user will have access to the course from enrollment date.
- Expire access delete progress
Set this field to “ON” to delete the user’s course and quiz data when the course access expires.
- Certificate
To add the certificate add its ID.
- Exam challenge
To add exam challenge, add its ID.
- Course disable lesson progression
If you want to set the “Course Progression” to “Free Form”, add ON in this column. Otherwise for “Linear” Course Progression, leave the column empty.
- Course disable content table
If you want to set the “Course Content” to “Only visible to enrollees”, add ON in this column. Otherwise to set “Always Visible”, leave the column empty.
- Course lesson per page
Default Lesson per page.
- Course lesson per page custom
Set the number of lesson that should appear per page.
- Course topic per page custom
Set the number of topics that should appear per page.
- Course start date
Set the course start date in epoch/Unix timestamp (in numbers)..
- Course end date
Set the course end date in epoch/Unix timestamp (in numbers).
- Course seats limit
Set the Number of seats available for the students to be enrolled in.
“Lessons” Sheet
- Type
The first column on the “Lesson” sheet is the “Type” column. This column is used to specify the type of content being imported. Content types options include: course, lesson, and topic.
In this sheet, this field should be set to “lesson”.
- Lesson ID
This field will show the lesson ID when you will export any lesson.
- Category
Here you can add the categories of the lesson i.e in the example;
- Category E, Category E > Category F
Category E is parent & Category F is child while Category E > Category F shows their relation.
- Tag
Here you can add a single or multiple tags for your lesson. Multiple tags can be separated by using commas.
- Title
This column holds the title of the lesson.
- Content
This column contains the lesson’s content.
Images, videos and text can be included in the content using HTML tags. To do so, use <img> for the images, <p> for text and <video> and for the videos.
- Lesson Image
Here you can add the featured image of the lesson. Simply add the link of the featured image in this column.
- Course
This column represents the course to which this lesson is attached.
- Shared Course
Add the shared course title.
- Forced lesson time
Here add the time of the lesson.
- Lesson assignment points amount
Set the lesson assignment points.
- Visible after
Here you can set the “enrollment based” lesson schedule. All you have to do is, add number of days after that the lesson will be available.
- Visible after specific date
Date can be added as a TimeStamp and to convert a date to timestamp you can use https://www.epochconverter.com/
- Lesson materials enabled
To enable lesson materials, add “on” in this field.
- Lesson materials
Supporting materials for the lesson can be added as plain text or HTML.
- Lesson video enabled
To enable video lesson, set this field to “ON”.
- Lesson video url
Add the URL of the video.
- Lesson video shown
If you want to select “Before completed sub-steps” option then add “Before” in the field or to select “After completing sub-steps” option, add “After” in the field.
- Lesson video auto start
If autostart should be enabled then add “On” here.
- Lesson video show controls
To enable video control display, add “On” in the field.
- Lesson video auto complete
To enable video auto complete, add “On” in the field.
- Lesson video auto complete delay
Here you can set the video auto complete delay in numbers in seconds.
- Lesson video show complete button
To enable video complete button, add “On” in the field.
- Lesson assignment upload
To enable the lesson assignment upload, add “On” in the field.
- Assignment upload limit extensions
Add a file extension if you want to limit assignment upload in a specific format.
- Assignment upload limit size
Here you can set the assignment file uploading limit i.e. 20M
- Lesson assignment points enabled
Add “On”, if assignment poinst are enabled.
- Assignment upload limit count
Set the number, to limit the number of uploaded assignment files.
- Lesson assignment deletion enabled
If you want to allow file deletion then add “On” in this field.
- Auto approve assignment
Add “On’ to enable the Auto Approve Assignment feature.
- Forced lesson time enabled
Add “On” here to enable Forced lesson time.
- Lesson schedule
If lesson schedule is set to “Enrollment-based” then add “visible_after” in this field.
If lesson schedule is set to “Specific date” then add “visible_after_specific_date” in this field.
- Sample lesson
To enable Sample Lesson, add “on” in this field.
- Lesson video focus pause
To enable the “Video Pause on Window Unfocused” toggle, add ON in this field.
- Lesson video track time
To enable the lesson video track time, add “On” in the field.
“Topics” Sheet
NOTE: Some of the columns in TOPIC sheet has “Lesson” in the title, instead of “Topic”. You can add your topic settings in these columns as Title doesnot has any effect.
- Type
The first column on the “Topics” sheet is the “Type” column. This column is used to specify the type of content being imported. Content types options include: course, lesson, and topic.
In this sheet, this field should be set to “topic”.
- Topic ID
This field will show the topic ID when you will export any topic.
- Category
Here you can add the categories of the topic i.e in the example;
- Category X, Category X > Category Y
Category X is parent & Category Y is child while Category X > Category Y shows their relation.
- Tag
Here you can add a single or multiple tags for your topic. Multiple tags can be separated by using commas.
- Title
This column will hold the title of the topic.
- Content
This column contains the topic’s content.
Images, videos and text can be included in the content using HTML tags. To do so, use <img> for the images, <p> for text and <video> and for the videos.
- Topic Image
Here you can add the featured image of the topic. Simply add the link of the featured image in this column.
- Course
This column represents the course to which this topic is attached.
- Lesson
This column represents the lesson to which this topic is attached.
- Shared Course
Add the shared course title.
- Shared Lesson
Add the shared lesson title.
- Topic materials enabled
To enable topic materials, add “on” in this field.
- Topic materials
Supporting materials for the topic can be added as plain text or HTML.
- Lesson video enabled
To enable video topic, set this field to “ON”.
- Lesson video url
Add the URL of the video.
- Lesson video shown
If you want to select “Before completed sub-steps” option then add “Before” in the field or to select “After completing sub-steps” option, add “After” in the field.
- Lesson video auto start
If autostart should be enabled then add “On” here.
- Lesson video show controls
To enable video control display, add “On” in the field.
- Lesson video focus pause
To enable video focus pause, add “On” in the field.
- Lesson video track time
To enable video track time, add “On” in the field.
- Lesson video auto complete
To enable video auto complete, add “On” in the field.
- Lesson video auto complete delay
To enable video autocomplete delay, add numbers in seconds in the field.
- Lesson video show complete button
To enable video show complete button, add “On” in the field.
- Lesson assignment upload
To enable assignment upload, add the “On’ in the field.
- Assignment upload limit extensions
Add a file extension if you want to limit assignment upload in a specific format.
- Assignment upload limit size
Here you can set the assignment file uploading limit i.e. 20M
- Lesson assignment points enabled
Add “On”, if assignment points are enabled.
- Lesson assignment points amount
Set the number of points assigned to the lesson assignment
- Assignment upload limit count
Set the number, to limit the number of uploaded assignment files.
- Lesson assignment deletion enabled
If you want to allow file deletion then add “On” in this field.
- Auto approve assignment
Add “On’ to enable the Auto Approve Assignment feature.
- Forced lesson time enabled
Add “On” here to enable Forced topic time.
- Forced lesson time
Here you enter the enforced lesson completion time in epoch/Unix timestamp (in numbers).
- Lesson schedule
If topic schedule is set to “Enrollment-based” then add “visible_after” in this field.
If topic schedule is set to “Specific date” then add “visible_after_specific_date” in this field.
- Visible after
Here you can set the “enrollment based” topic schedule. All you have to do is, add number of days after that the topic will be available.
- Visible after specific date
Here you enter the lesson visibility time (starting) in epoch/Unix timestamp (in numbers).