## Blocks: Course contents

block_course_contents
Maintained by David Mudrák
Course contents block displays a list of all visible sections (such as topics or weeks) in the course. Clicking at a link scrolls to that section or displays just that particular section, depending on the course layout setting.
1124 sites
39 fans
Moodle 2.4

Course contents block is a plugin for Moodle that displays a list of all visible sections (such as topics or weeks) in the course. Clicking at a link scrolls to that section or displays just that particular section, depending on the course layout setting.

If the section name is explicitly defined, it is displayed in the course contents outline. If enabled, the block can eventually extract a suitable section title from the section summary text.

## Background

In older Moodle versions, course sections could not be named explicitly. Many teachers used to put headings manually to the course summary text fields. This block did an awesome job that it automagically extracted these headings from the summary fields and generated a nice course contents from them.

This feature is still available but it is less useful in modern Moodle versions where course sections can have explicit section titles defined.

## Automatic section title

If the section name is not explicitly defined and the auto title feature is enabled, the block automatically extracts a suitable title for the section from the section summary text.

If the summary starts with a heading (H1, H2, H3, etc), the heading will use such heading text. If the summary starts with a bold text, it will be used as a section title. If the summary consists of several paragraphs, the first one will be used.

Technically speaking, the plain text content of the first non-empty HTML DOM node from the section summary can be used as the summary title.

## Tips and features

• Section titles can be enumerated.
• You can combine the auto title feature with the multi-language filter to generate course contents in the user's language.
• The block fits nicely into multipage course layout (introduced in Moodle 2.3).

### Contributors

Dan Marsden: Contributor
Petr Skoda: Contributor
Nicolas Dunand: Contributor

### Awards

• Thu, 16 Apr 2015, 8:31 PM
I am sorry but this feature would definitely be out of the intended scope of this block. You may want to check some other plugins here to see if they fit your needs better. Quick googling found for example https://moodle.org/plugins/view/block_simple_nav or https://moodle.org/plugins/view/block_course_menu
Also note, in Moodle 2.9, the navigation block is massively simplified and does not contain many of these links any more.
• Wed, 29 Apr 2015, 8:32 PM
Thanks David... I found a work around. But the problem with majority of the plugins is that they are not supported in the latest version of moodle! Which is very unfortunate. If you know how to edit plugins to work in the latest moodle version, I would be glad if you can guide me.
• Thu, 30 Apr 2015, 2:52 AM

Well, in many cases, the plugins published here for a version X usually work pretty well in versions X + 1, too. You can try and see.

• Sat, 30 Jul 2016, 2:10 AM

New versions 4.0 (for Moodle 2.7, 2.8 and 2.9) and 5.0 (for 3.0 and 3.1) were just released. Among other improvements, the new version provides a way to control how the course contents blocks are displayed in courses, including ability to disable enumeration of items in all block instances. See release notes for more details.

• Thu, 4 Aug 2016, 8:08 AM
I love this plugin. Installed in a Moodle 3.1 installation. It really helps with navigating a course. Would it be possible to add an option to include the section's dates, as well as the section name, when using the weeks format for a course? That would make this perfect for what I need. Student's could then not only scroll through the list of topics from the course sections, but can look through the dates as well. I found a hack for the lib.php file that would do that outside this plugin, but the hack is not complete and breaks the ability to backup a course.
• Mon, 8 Aug 2016, 3:12 PM

Thanks for the suggestion James. Can you please report it as a feature request in the plugin tracker. I think I have an idea that might fit any course format: optionally display the implicit section title (date, topic number etc) even when the section has an explicit title.

• Thu, 13 Oct 2016, 8:31 PM
I have just installed this to a test environment using a very recent (two week old) build of 3.1.2. Even with 'attempt to enumerate titles from topic summary' enabled, it failed to do so when tested (I set the topic title to be a whitespace character, so no topic title displays on the page, but the topic title was blank in the block too).
• Tue, 25 Oct 2016, 4:59 AM

Sorry to hear you have troubles with the plugin Dave. May I ask you to report the issue with as many details and steps to reproduce as possible at the plugin's issue tracker https://github.com/mudrd8mz/moodle-block_course_contents/issues Thanks in advance.

• Sat, 26 Nov 2016, 4:27 PM
David, are you thinking about an update for Moodle 3.2?
Anyone: as David says, often version for X works with X+0.1 - has anyone tested?

-Derek
• Mon, 28 Nov 2016, 6:17 PM

I'll try to look at updating my plugins for 3.2 this week. Any help with testing current versions will significantly help, thanks in advance!

• Wed, 31 May 2017, 9:16 PM
Hi David,
is this plugin continued? I used it in Moodle 3.2 without noticing any issues. After updating to Moodle 3.3 I only see the section 0 as navigation point which makes this plugin pretty useless in Moodle 3.3.
Best regards, Beat
• Fri, 2 Jun 2017, 4:11 PM
Hi Beat, hi David,

Observing the same thing here. I think it only comes down to commenting out 3 lines in block_course_contents.php (the IF block containing $course->numsections), as$course->numsections is not relevant anymore due to MDL-57769.
• Fri, 2 Jun 2017, 4:17 PM
Hi David,

I just filed a PR on GitHub offering a fix for this.
• Fri, 2 Jun 2017, 4:35 PM
Hi Nicolas,
thank you for providing this fix. Now all the sections are there again.
• Fri, 2 Jun 2017, 8:23 PM

Good catch! Thanks Beat for reporting this, and many thanks Nicolas for fixing it promptly. I have included the fix in the version 5.1 of the block for Moodle 3.3.