如何在Moodle中将块添加到页面的中心?

时间:2014-05-19 15:45:26

标签: moodle

我想在活动下面而不是在左侧或右侧栏上显示评论栏。

比我想象的容易得多。

我添加了center-post的代码,它会在主要内容的底部添加一个块。它可以很容易地修改为有一个center-pre用于显示在主要内容的顶部。

1 个答案:

答案 0 :(得分:2)

在/theme/yourthemename/config.php

添加' center-post'到需要它的每个页面布局的regions()数组。例如,对于模块,只将它添加到' incourse'布局

 // Part of course, typical for modules - default page layout if $cm specifi
 'incourse' => array(
     'file' => 'general.php',
     'regions' => array('side-pre', 'side-post', 'center-post'),
     'defaultregion' => 'side-pre',
 ),

在/theme/yourthemename/lang/en/theme_yourthemename.php add

$string['region-center-post'] = 'Center Bottom';

在/theme/yourthemename/layout/general.php

在$ hassidepost之后靠近顶部...添加

$hascenterpost = (empty($PAGE->layout_options['noblocks']) && $PAGE->blocks->region_has_content('center-post', $OUTPUT));

然后查找MAIN_CONTENT_TOKEN并添加

<div class="region-content"> <?php echo core_renderer::MAIN_CONTENT_TOKEN ?> </div>
// Add this
<?php if ($hascenterpost) { ?>
<div id="region-center-post" class="block-region">
<div class="region-content">
<?php echo $OUTPUT->blocks_for_region('center-post'); ?>
</div>
</div>
<?php } ?>
// End of add this
<?php echo $coursecontentfooter; ?>

现在转到模块,向模块添加一个块,您可以选择将块移动到中心底部。