Note: You are currently viewing documentation for Moodle 2.5. Up-to-date documentation for the latest stable version of Moodle may be available here: Bulk course upload.

Bulk course upload

From MoodleDocs

This page requires updating. Please do so and remove this template when finished.

News June 2013

Placeholder update only.


Bulk course upload is a contributed code that creates a course with a teacher and basic course settings from a CSV file. There is also a bulk course deletion tool. These work in 1.8 and 1.9.

Tips & Tricks

To use this code successfully, the site administrator must create the teacher accounts before creating the courses. The role for the teacher in the csv is the role short name. So for teacher use 'editingteacher' and Non-editing teachers use 'teacher' and so on. The course category must also exist before uploading the file.

The bulk course delete tool uses a txt file with the course short names. One course per line.

Moodle has a unique constraint combining a course's category and its sortorder, in other words two courses in the same category shouldn't have the same sortorder. When inserting courses manually Moodle does the trick of calculating sortorder, but using uploadcourses.php you need to provide a valid value for sortorder, each row should have a different sortorder value in the same category.

Sample data

First line in csv file


Example 1st record in csv file

Greatest Course,GC101,Education Portfolios,1,,University Portfolio,topics,0,0,Owner,Owners,Visitor,Visitors,1/14/2008,10,15728640,0,0,1/12/2008,1/12/2008,portfolio,0,0,0,,,,0,2,1,1/14/2008,5/10/2008,0,0,10,editingteacher,

Example 2st record in csv file

Worst Course,WC101,Education Portfolios,1,,University Sample Courses,topics,0,0,Owner,Owners,Visitor,Visitors,1/14/2008,10,15728640,0,0,1/12/2008,1/12/2008,portfolio,0,0,0,,,,0,2,1,1/14/2008,5/10/2008,0,0,10,editingteacher,

See also


  • course uploader is an admin tool plugin for 2.2 and above for bulk course create/update/delete and can use templating from Moodle backups, or a nominated course.