我正在尝试仅在我的Moodle的首页上显示图像。
有没有办法检测用户所在的位置,例如课程页面,个人资料页面等,并且只有在用户位于首页时才使用if语句显示图片?
我正在使用Clean主题的自定义版本,我尝试了下面的代码。
当你在课程中它没有显示图像时,因为ID为1的课程是首页,但是当你转到其他页面时它会失败,例如个人资料页面。
<?php if ($PAGE->course->id == 1):?>
<img src="<?php echo $OUTPUT->pix_url('header', 'theme'); ?>" class="img-responsive"/>
答案 0 :(得分:0)
您可以使用global $ PAGE中的pagetype属性来检查您所在的页面
if (isset($PAGE) && (strpos($PAGE->pagetype, 'site-') === 0) {
// I'm on the front page.
}
但是你可能最好创建一个首页布局。编辑主题/ yourthemename / config.php并添加(如果它不存在)
$THEME->layouts =
....
array(
// The site home page.
'frontpage' => array(
'file' => 'frontpage.php',
'regions' => array('side-pre', 'side-post'),
'defaultregion' => 'side-pre',
'options' => array('nonavbar' => true),
),
);
然后编辑frontpage.php - 如果没有,则将columns3.php复制到frontpage.php
然后你可以有一个自定义的首页:)