Custom Course Menu

Blocks ::: block_custom_course_menu
Maintained by Tony Box, Matthew Davidson
A block to display enrolled courses in a highly configurable manner for both students and teachers.
Latest release:
215 sites
30 fans
Current versions available: 2

Custom Course Menu Block

A block to display enrolled course in a configurable manner for both students and teachers.


  • Simple install
  • Intuitive controls
  • Manually hide courses or categories from the list
  • Customize sort order of courses and categories
  • Expand/collapse course categories
  • Favorites "category"
  • Last # viewed courses "category"
  • Site administrators get an All courses... link


  • Moodle 2.1+


Simply rename the moodle-block_custom_course_menu to custom_course_menu, move the folder into your blocks directory, and run the Notifications admin link.


  1. Turn block editing mode on by clicking the gear icon in the bottom right corner.
  2. Hide courses and cateogires by clicking the eye icon next to them. When a course or category has its eye shut and is strikethrough it is hidden.
  3. Sort courses and categories by dragging them into the order you would like.
  4. After you are finished customizing your course menu, click the gear icon once again to save your changes and turn editing mode off.

Developed by the University of Portland. Many features and additions contributed by Syxton


Screenshot #0
Screenshot #1
Screenshot #2


Tony Box (Lead maintainer)
Matthew Davidson: Developer
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Thu, Nov 5, 2015, 9:46 PM
  • Mon, Nov 23, 2015, 10:29 PM

    Thanks guys for sharing this useful block with the community. I found it working well from usability perspective. When reviewing the code, I raised some suggestions for fixes into your issues tracker at github. I believe they would be better fixed before we approve the block here. Thanks for your patience with the review and approval process.

  • Mon, Feb 29, 2016, 7:06 PM

    Please see my comments on issue #15 regarding the sesskey checking.

  • Fri, Mar 11, 2016, 7:58 AM
    Hi David,

    I believe we've got all of your concerns properly buttoned-up now. Sorry for all of the resubmissions.

  • Mon, Apr 4, 2016, 6:13 PM

    Hi Tony. Thanks for fixing the issues promptly. If only I was also able to react on them same promptly! Sorry for the delays with the review.

    I checked your latest code again but did not get too far with testing. I was immediately stopped by the issue #26 on PostgreSQL machine. Let me suggest to equip your block with PHPUnit and Behat tests and let these tests run via Travis CI on both MySQL and PostgreSQL to catch these things yourself.

    Additionally, my comment on issue #15 from 29 Feb does not seem to have been addressed. Actually it makes me believe that it can't work as it is now.

    I am sorry but I have to mark this as needing more work once again. Thanks for understanding.

  • Wed, May 18, 2016, 2:50 AM
    David--please see my reply to issue #15 when reviewing this again. Thanks!
  • Wed, Jun 1, 2016, 9:14 PM

    Hi guys. Please see my comment left in the tracker. For now, I am happy to approve this. You are cleared to land, welcome to the Plugins directory.

  • Thu, Apr 27, 2017, 10:09 PM
    Hi Tony, in the event of a course located under category1>category2>category3, is it possible to show full path of categories? As far as I can see the only category showed is the one that contains the course. Many thanks!
  • Tue, May 9, 2017, 1:48 AM
    Jose. Unfortunately, that is not a feature of the plugin. If you'd like to add it as maybe an admin menu option, to enable/disable, feel free to create an issue/request on the plugin's github page here:
  • Tue, May 9, 2017, 1:49 AM
    Sorry that was kind of unclear. If you'd like to add it to the request list, please add it to github smile
Please login to post comments