Identificar la página principal en el layout

Identificar la página principal en el layout

de Mario Gayo -
Número de respuestas: 3

Hola:

Necesito incluir el nombre del curso pero sólo en la página principal del curso. He visto que eso se puede hacer directamente en los ficheros de layout del tema por lo que no sería necesario tocar el código de Moodle y que se puede hacer con el siguiente código PHP:

<?php if ($COURSE->id > 1) {
     echo $OUTPUT->heading(format_string($COURSE->fullname), 1, 'coursetitle');
     echo '<div class="bor"></div>';} 
     ?>

Lo que necesito es saber cuando estoy en la página principal para ejecutar ese código sólo en esa página. ¿Alquien me puede ayudar con la condición que debo poner al if?

Promedio de valoraciones: -
En respuesta a Mario Gayo

Re: Identificar la página principal en el layout

de Franco Pantoja -
Imagen de Moodlers de gran ayuda

Hola Mario

creo que puedes probar con el contexto

$context = context_course::instance(SITEID);
if ($context) {
}


Saludos!!

En respuesta a Franco Pantoja

Re: Identificar la página principal en el layout

de Mario Gayo -

Muchas gracias por responder pero creo que no es lo que necesito o por lo menos no consigo hacerlo funcionar. 

He probado con el siguiente código pero me muestra el título en todas las páginas del curso:

<?php
$context = context_course::instance(SITEID);
if ($context){
echo $OUTPUT->heading(format_string($COURSE->fullname), 1, 'coursetitle');
} ?>

Entiendo que por SITEID haces referencia al sitio y en ese caso se podría identificar la página principal del sitio pero lo que necesito es discriminar la página principal de cada curso.

Es decir quiero que el nombre largo del curso aparezca únicamente en la página principal del curso (no la página principal del sitio) pero no en el resto de páginas (foros, tareas, etc.) En cualquier caso con el código anterior, el título sigue apareciendo en todas las páginas del curso.

¿Cuál sería el argumento en ese caso?

En respuesta a Mario Gayo

Re: Identificar la página principal en el layout

de Franco Pantoja -
Imagen de Moodlers de gran ayuda

Hola

a ver si esto nos puede ayudar,

 localizamos en theme/my_theme/config.php

$THEME->layouts = array(   
 ...
   // Main course page.
    'course' => array(
        'file' => 'mycourses.php', // este será el layout que cargue en la vista course
        'regions' => array('side-pre'),
        'defaultregion' => 'side-pre',
        'options' => array('langmenu'=>true),
    ),


Entonces actualizamos theme/my_theme/layout/mycourses.php, por ejemplo

...
<?php echo $OUTPUT->standard_top_of_body_html() ?>
<?php require('header.php'); ?>
<?php echo $course->fullname ?>
...


Saludos!