Block layout

Revision as of 13:40, 1 August 2008 by mandy honeyman (talk | contribs) (Default block layout for new courses)

Jump to: navigation, search

Default block layout for new courses

Sticky blocks may be used in Moodle 1.6.

Alternatively, to amend the default block layout for new courses (in all versions of Moodle), add one or more of the following lines (omitting the forward slashes) to config.php and amend the block names as required.

Note how the colon is used to separate those blocks appearing on the left, from those appearing on the right.

// These variables define DEFAULT block variables for new courses
// If this one is set it overrides all others and is the only one used.
//      $CFG->defaultblocks_override =    'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity';
//
// These variables define the specific settings for defined course formats.
// They override any settings defined in the formats own config file.
//      $CFG->defaultblocks_site = 'site_main_menu,admin,course_list:course_summary,calendar_month';
//      $CFG->defaultblocks_social =  'participants,search_forums,calendar_month,calendar_upcoming,social_activities,recent_activity,admin,course_list';
//      $CFG->defaultblocks_topics =  'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity';
//      $CFG->defaultblocks_weeks =  'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity';
// These blocks are used when no other default setting is found.
//      $CFG->defaultblocks = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity';</pre>

(code copied from config-dist.php)

Resetting the block layout for existing courses

The block layout for existing courses may be reset by copying the following script into a text file, saving it as resetblocks.php, copying it into the Moodle root directory, then visiting
http://yourmoodlesite.org/resetblocks.php
. Please note that a database backup is recommended before using the script. ;-)
<?php
require_once('config.php');
require_once($CFG->libdir.'/blocklib.php');
$courses = get_records('course');
foreach($courses as $course) {
   $page = page_create_object(PAGE_COURSE_VIEW, $course->id);
   blocks_repopulate_page($page);
}
print_heading('Done!');
?>

See also

Using Moodle Default Block Layout for moodle 1.9 forum discussion