Import/Export
Export courses for backup or transfer, and import courses from JSON files. The import/export feature preserves all course data including sessions and materials metadata.
Exporting Courses
Export courses to JSON files for backup, migration, or sharing.
How to Export
- Go to Classerna > Settings.
- Click the "Import/Export" tab.
- In the Export section, select a course from the dropdown.
- Click "Export Course".
- Save the downloaded JSON file.
What's Included in Export
| Data | Included |
|---|---|
| Course title and content | Yes |
| Course excerpt | Yes |
| All course meta (pricing, delivery, capacity, etc.) | Yes |
| Registration questions | Yes |
| Waivers content | Yes |
| FAQs | Yes |
| Financial aid info | Yes |
| Email templates | Yes |
| Category and difficulty terms | Yes (names only) |
| Sessions with all metadata | Yes |
| Session materials metadata | Yes (but not files) |
| Featured image | URL only |
| WooCommerce product link | No |
| Enrolled students | No |
Importing Courses
Import courses from JSON files. Imported courses are created as drafts with "Coming Soon" enabled so you can review before publishing.
How to Import
- Go to Classerna > Settings.
- Click the "Import/Export" tab.
- Drag and drop a JSON file into the upload area, or click to browse.
- The import processes automatically.
- Click the link to edit the imported course.
After Import
Imported courses need some additional setup:
- Edit the imported course.
- Link a WooCommerce product for payment processing.
- Upload actual files for any materials (placeholders were created).
- Update dates if the sessions have past dates.
- Verify categories and difficulty exist (created if needed).
- Uncheck "Coming Soon" when ready.
- Publish the course.
JSON Format
The export format is a structured JSON file. Understanding the format helps with manual editing or programmatic course creation.
File Structure
{
"export_version": "1.0",
"plugin_version": "1.2.2",
"export_date": "2026-01-18 12:00:00",
"course": {
"title": "Course Title",
"content": "<p>Course description HTML</p>",
"excerpt": "Short description",
"status": "publish",
"meta": {
"_course_coming_soon": "",
"_course_price": "299",
"_course_delivery_type": "hybrid",
...
},
"categories": ["Category Name"],
"difficulty": ["Beginner"],
"featured_image_url": ""
},
"sessions": [
{
"title": "Session 1: Introduction",
"content": "Session description",
"menu_order": 1,
"meta": {
"_session_date": "2026-03-01",
"_session_start_time": "18:00",
"_session_materials": [...]
}
}
]
}
Key Meta Fields
| Meta Key | Description | Format |
|---|---|---|
_course_coming_soon |
Coming soon status | "1" or "" |
_course_is_free |
Free course flag | "1" or "" |
_course_price |
Display price | Number string |
_course_delivery_type |
Delivery method | "in-person", "online", "hybrid" |
_course_capacity |
Max enrollment | Number string |
_course_faqs |
FAQ items | Array of {question, answer} |
_session_date |
Session date | "YYYY-MM-DD" |
_session_materials |
Materials list | Array of material objects |
Use Cases
Backup and Restore
Regularly export courses as backups. If something goes wrong, import the backup to restore your course.
Site Migration
Moving to a new WordPress installation? Export all courses from the old site and import them on the new site.
Course Templates
Create a well-structured course, export it, then import it as a starting point for similar courses. Modify the imported course as needed.
Multi-Site Distribution
Running courses on multiple sites? Create and perfect a course on one site, then export and import to other sites.
Seasonal Course Rollover
Offering the same course each semester? Export the course, update the dates in the JSON, and import for the new semester.
Sample Import File
A sample course JSON file (sample-course-import.json) is included with the plugin. Use it to:
- Test the import functionality
- See the expected JSON format
- Use as a template for creating courses programmatically
Find the sample file in your plugin directory at wp-content/plugins/classerna/sample-course-import.json.