Moodle blocks are plugins that load in the right-hand side or left-hand side column of a Moodle site and display information to the user in a rectangular block. Each side column can have zero, one, or multiple blocks loaded. If a column contains no blocks, the column will not be displayed. This allows Moodle to support one, two, or three column page layouts. Examples of built-in Moodle blocks include: HTML content, calendars, menus, and course lists, amongst others.
This chapter covers how to create a basic block in Moodle. This is one of the easiest and most popular customizations. Several basic Moodle programming concepts will be introduced that are used throughout the book. Here are some of the new skills that you will develop:
Creating a block from scratch
Managing language files
Working with capabilities
Adding instance configuration
Adding scheduled actions to a block
Reviewing a real world block
Using a block as a code container