Course contents block

From MoodleDocs

Course contents block produces a table of contents for the course - i.e. a list of all visible topics/weeks in your course. Clicking at one of these links will display that particular section (topic or week).

If the section has its name defined, the block uses it as the title for that section.

If the section name is not defined but there is the section summary (description) available, the block automatically extracts a suitable title from that summary. If you start summary with a heading (H1, H2, H3, etc.), it will use such heading text. If your 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 spoken, the plain text content of the first non-empty HTML DOM node from the section summary is used as the summary title.

If the summary is empty, a customizable text "Unit X" (where X is the number) is displayed.

You can combine this feature with the multi-language filter to generate course contents in the user's language.

The block was written and is currently maintained by David Mudrak

The topic title is automatically extracted from the section summary


There is a public source code repository for the block at You can either clone that repository or just download the latest package there. Follow the instructions provided by GitHub or see Git for Administrators for details. This may be what you want:

# cd /var/www/moodlesite/htdocs/blocks
# git clone git:// course_contents
# cd course_contents
# git checkout -b local_22_STABLE origin/MOODLE_22_STABLE

If your Moodle dirroot is git checkout too, you may want to add the block directory into the list of ignored files:

# cd /var/www/moodlesite/htdocs
# echo /blocks/course_contents/ >> .git/info/exclude

To download the block in ZIP or TAR.GZ packages, follow this page


Start of the section summary HTML
Automatic course contents line
Welcome!<br />In this course, you will ... Welcome!
<h1>Introduction</h1><p>In this course ...</p> Introduction
<h1><span>Lesson 1</span>: Introduction</h1> Lesson 1

See also