
Un hack de moodle
Al programar un sitio web en moodle nos ha surgido la necesidad de añadir un archivo de estilos (css) dependiendo de si el usuario es un estudiante y no incluirlo de lo contrario.
Para ello hay que editar uno de los archivos del tema que se utiliza, se puede editar el “header.html” o bien el “meta.php” .
El código que hay que añadir al archivo es el siguiente:
<?php
global $CFG;
global $course;
if (!is_null($course->id)) {
$context = get_context_instance(CONTEXT_COURSE, $course->id); // Course context
$student_role=array_shift(get_roles_with_capability(‘moodle/legacy:student’, CAP_ALLOW, $context));
$user_roles=get_user_roles($context);
foreach($user_roles as $value){
if($value->name==$student_role->name){
print(‘<link rel=”stylesheet” type=”text/css” href=”‘.$CFG->httpsthemewww.’/standard/student.css” />’);
break;
}
}
}
?>
Y con esta simple modificación se incluye el archivo “student.css” con los estilos especificos para los estudiantes.










Me podria explicar como hacer eso exactamente? como edito dichos archivos “header.html” “meta.php”
¿Y tu qué opinas?