Course templates

General plugins (Local) ::: local_course_templates
Maintained by Yes, that's meFlotter Totte, Sunny Teacher, emeneo Plugins
With this plugin you can easily create courses based on course templates. The plugin also can be used to easily duplicate courses
Latest release:
1668 sites
126 fans
Current versions available: 2

What this plugin does

With this plugin you can easily create courses based on course templates. The plugin also can be used to easily duplicate courses


  1. - Install the plugin as usual
  2. - Manually create the course category "Course templates" (you may later wish to hide this category)

Adding a template course

Add any kind of course into above "Course templates" category.

Creating a template based course

Please see the picture below:

Create template based course

Community tutorials

Stay up to date

A big thanks to emeneo for providing a place for support for the plugin. I recommend you to create an account on below site in order to receive latest information related to the plugin.

emeneo plugin world

  • Andrew Caya / University of Montreal (major updates version 3.11: Non-admin users (a Category Manager for example) will be able to create a course from a template; Usage of standard Moodle forms for most of the plugin's forms; Client-side and server-side validation on all forms; Support for long-lasting course creation processes; Moodle notifications when the course creation process fails; French version of all translated strings submitted to the Amos database and many others.
  • Emma Richardson (Testing Moodle 3.3, 3.4)
  • Leon Stringer (leonstr) (Category bug fix)
  • Michael Milette (Course names, summaries and course categories are now processed through Moodle filters)
  • Renato Soldenhoff (Improved role based access)


Screenshot #0


Yes, that's me
Flotter Totte (Lead maintainer)
Sunny Teacher: Maintainer
emeneo Plugins: Concept, development and support
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Yes, that's me
    Fri, Oct 15, 2021, 10:42 PM
    @Fatima: Please send submit a ticket here:
    Please note: this feature probably needs funding.
  • Michael Milette
    Fri, Oct 22, 2021, 10:36 PM
    Does not seem to work in Moodle 3.11. I get the following error in the php error logs:

    Default exception handler: error/setting_invalid_ui_label
    Debug: Error code: setting_invalid_ui_label $a contents:
    * line 153 of /backup/util/ui/backup_ui_setting.class.php: base_setting_ui_exception thrown
    * line 156 of /backup/moodle2/backup_section_task.class.php: call to base_setting_ui->set_label()
    * line 153 of /backup/util/plan/base_task.class.php: call to backup_section_task->define_settings()
    * line 60 of /backup/util/plan/base_plan.class.php: call to base_task->set_plan()
    * line 161 of /backup/moodle2/backup_plan_builder.class.php: call to base_plan->add_task()
    * line 188 of /backup/moodle2/backup_plan_builder.class.php: call to backup_plan_builder::build_section_plan()
    * line 101 of /backup/moodle2/backup_plan_builder.class.php: call to backup_plan_builder::build_course_plan()
    * line 163 of /backup/util/factories/backup_factory.class.php: call to backup_plan_builder::build_plan()
    * line 67 of /backup/util/plan/backup_plan.class.php: call to backup_factory::build_plan()
    * line 463 of /backup/controller/backup_controller.class.php: call to backup_plan->build()
    * line 149 of /backup/controller/backup_controller.class.php: call to backup_controller->load_plan()
    * line 1417 of /course/externallib.php: call to backup_controller->__construct()
    * line 68 of /local/course_templates/process.php: call to core_course_external::duplicate_course(), referer:
  • Tom Tom
    Wed, Apr 27, 2022, 10:56 PM
    Is there a way to automate this? That all new courses get a default template no matter how they get created--manually or with a course feed?
  • Zak Stoimenov
    Thu, Jul 28, 2022, 8:34 AM
    I am trying to enable access to the plugin for one of our roles. I enabled the following permissions: course template view, backup courses, backup user data, restore courses, restore user data, approve course creation. I am now getting an "error/setting_locked_by_permission". Any ideas why this is happening?
    Moodle 4.0.2
  • Blaukraut Suppe
    Fri, Aug 19, 2022, 8:21 PM
    I had a the same "setting_locked_by_permission" error trying to enable templates for course creators. Assigning "moodle/restore:configure" and "moodle/backup:configure" capabilities did the trick for me.
  • Zak Stoimenov
    Mon, Aug 22, 2022, 12:16 PM
    Thanks a lot, @Blaukraut Suppe! The backup:configure actually solved the problem.
  • Vipin Saxena
    Mon, Aug 22, 2022, 2:34 PM
    @Zak Stoimenov @Blaukraut Suppe
    I allowed for following capabilities
    Allow: local/course_templates:view
    Allow: moodle/backup:backupcourse
    Allow: moodle/backup:userinfo
    Allow: moodle/restore:restorecourse
    Allow: moodle/restore:userinfo
    Allow: moodle/course:create
    Allow: moodle/site:approvecourse
    Allow: moodle/restore:configure

    On the third step "Define Settings" of Create a course from a template, I am getting the error, "Course or activity not accessible." after the user click continue after entering Course name & Course short name.
    Moodle 4.0.1

    Can you please hint, what I might be missing?
  • Zak Stoimenov
    Mon, Aug 22, 2022, 2:46 PM
    @Vipin Saxena, I got the same message but figured that it is because my template course is hidden. Check to see if that's your case as well. Simply unhide it and the error should go away. I hope this helps!
  • Blaukraut Suppe
    Thu, Aug 25, 2022, 8:12 PM
    @Vipin Saxena
    Zak's tip sounds good. If that doesn't help, try assigning "moodle/course:viewhiddencourses" or even "moodle/course:view" permissions. (course:view allows users to see content of courses they are not enrolled in. Only use that if appropriate for the role you are assigning to.)
  • Keith VW
    Sat, Aug 27, 2022, 5:24 AM
    Does not seem to work on 3.9.16 (at least on my installation), keeps throwing an error that the course category doesn't exist in the DB. I beg to differ, after checking I can see the category and course in the "non-existent table". Spent a couple of hours on it and never got it to function.
  • Julian Hopkins
    Tue, Nov 29, 2022, 10:56 PM
    Hi, I was wondering if this will be available in Moodle 4.0 please? Or are there any alternatives?
  • Mohamed Atia
    Tue, Dec 20, 2022, 7:48 PM
    First I would like to thank you for your great plugin,
    I used it in my university, and I have a manager for each college, and I want each manager to be able to restore only one template. to do this I didn't give any of them permission in the course templates category, but I enrolled each one of them as a manager in his template. this works great for me where when any admin tries to use a template not belong to his college he will get a message you don't have permission to do that.


    The admin is enrolled in all newly created courses, is there a way to have a setting to prevent user enrollment to be included in newly created courses from the template?
  • Jimmy Rouquette
    Thu, Feb 9, 2023, 5:27 PM
    Hello, first of all, thank you for this plugin.
    Have you planned to update the software for compatibility with Moodle version 4.1.1?
  • Santiago Montagnoli
    Wed, Apr 5, 2023, 5:32 PM

    @Keith VW
    This error occurs when there is no category id 1 on the site, which is the one that the plugin sets by default. It is a bug.
    You can try to access with the address by sending an id of an existing category, no matter which one, so that it does not use the default one, example:
  • Mohamed Atia
    Thu, Sep 28, 2023, 6:45 PM
    I want to express my gratitude for the excellent plugin you've provided. While using it, I designed a course template with the Course visibility option set to "hide." Additionally, in Moodle settings, the course defaults also have Course visibility set to "hide." However, when I use the template to create a course, the course is generated with the Course visibility set to "show."

    I have another query: Is there a method to enable users to create courses from templates without granting them the ability to create or restore courses in any other way? I aim to restrict course creators to exclusively using templates for course creation, disallowing other methods.
1 2 3 4
Please login to post comments