Menú adicional

¡Consiga MemberPress hoy mismo! ¡Empieza a cobrar por los contenidos que creas! Obtenga MemberPress ahora
  1. Inicio
  2. Base de conocimientos
  3. Cursos
  4. Creación de cursos
  5. Mostrar el icono de BLOQUEO para las lecciones protegidas en el esquema del curso

Mostrar el icono de BLOQUEO para las lecciones protegidas en el esquema del curso

Nota: Este es un artículo avanzado para usuarios o desarrolladores familiarizados con PHP. Sólo se aplica a las lecciones creadas en MemberPress Course Add-on cuando la plantilla Courses Pro está activada en MemberPress > Configuración > pestaña ReadyLaunch.

Si desea mostrar un icono de BLOQUEO junto a sus lecciones protegidas en el esquema del curso en la página principal de Cursos o en la página de lecciones, puede hacerlo siguiendo las instrucciones que se indican a continuación.

En primer lugar, deberá ir a su servidor, copiar el archivo wp-content/plugins/memberpress-courses/app/views/courses/courses_classroom_section_lessons.php y edítalo en tu editor de archivos.

En su archivo, debe reemplazar el siguiente código:

<?php
$lesson_available = $lesson->is_available();

$has_completed_lesson = is_user_logged_in() && models\UserProgress::has_completed_lesson($current_user_id, $lesson->ID);

$attempt = $lesson->post_type == models\Quiz::$cpt ? models\Attempt::get_one(['user_id' => $current_user_id, 'quiz_id' => $lesson->ID]) : false;
?>
<div id="mpcs-lesson-<?php echo esc_attr($lesson->ID); ?>" class="mpcs-lesson<?phpif($has_completed_lesson) {  echo "completed ";} else if(!$lesson_available || (get_post_type() == models\Quiz::$cpt && $lesson->ID != get_the_ID())) {  echo "locked ";}if($lesson_available && $is_sidebar && $lesson->ID == get_the_ID()) echo "current ";if($show_bookmark && isset($next_lesson->ID) && $next_lesson->ID == $lesson->ID) echo "current ";?>">

<?php if($lesson_available) : ?>
<a href="/es/</?php echo esc_url(get_permalink($lesson->ID)); ?>" class="mpcs-lesson-row-link">

<?php else: ?>
<span class="mpcs-lesson-row-link">
<?php endif; ?>

<div class="mpcs-lesson-progress">
<?php if($has_completed_lesson) : ?>

<span class="mpcs-lesson-complete"><i class="mpcs-ok-circled"></i></span> <?php elseif($lesson_available && ($is_sidebar && $lesson->ID == get_the_ID()) || ($show_bookmark && $next_lesson->ID == $lesson->ID)) : ?>

<span class="mpcs-lesson-current"><i class="mpcs-adjust-solid"></i></span>
<?php else: ?>

<span class="mpcs-lesson-not-complete"><i class="mpcs-circle-regular"></i></span>

<?php endif; ?>
</div>

<div class="mpcs-lesson-link">
<i class="<?php echo esc_attr($lesson->post_type); ?>-icon"></i>
post_title); ?&gt;

is_complete()) : ?&gt;

<span class="mpcs-lesson-list-quiz-score">(get_score_percent()); ?&gt;)</span>

<?php endif; ?>
</div>

<div class="mpcs-lesson-button">

El código anterior debe sustituirse por éste:

<?php
$lesson_available = $lesson->is_available();

$lesson_available = $has_completed_lesson = is_user_logged_in() && models\UserProgress::has_completed_lesson($current_user_id, $lesson->ID);

$attempt = $lesson->post_type == models\Quiz::$cpt ? models\Attempt::get_one(['user_id' => $current_user_id, 'quiz_id' => $lesson->ID]) : false;

$lesson_protected = MeprRule::is_locked( get_post( $lesson->ID ) );
?>

<div id="mpcs-lesson-<?php echo esc_attr($lesson->ID); ?>" class="mpcs-lesson<?phpif($has_completed_lesson) {  echo "completed ";} else if(!$lesson_available || (get_post_type() == models\Quiz::$cpt && $lesson->ID != get_the_ID())) {  echo "locked ";}if($lesson_available && $is_sidebar && $lesson->ID == get_the_ID()) echo "current ";if($show_bookmark && isset($next_lesson->ID) && $next_lesson->ID == $lesson->ID) echo "current ";?>"> 

<?php if($lesson_available) : ?>
<a href="/es/</?php echo esc_url(get_permalink($lesson->ID)); ?>" class="mpcs-lesson-row-link">
<?php else: ?>
<span class="mpcs-lesson-row-link">
<?php endif; ?>

<div class="mpcs-lesson-progress">
<?php if($lesson_protected) : ?>

<span class="mpcs-lesson-locked"><i class="mpcs-lock"></i></span>
<?php elseif($has_completed_lesson) : ?>

<span class="mpcs-lesson-complete"><i class="mpcs-ok-circled"></i></span> <?php elseif($lesson_available && ($is_sidebar && $lesson->ID == get_the_ID()) || ($show_bookmark && $next_lesson->ID == $lesson->ID)) : ?>

<span class="mpcs-lesson-current"><i class="mpcs-adjust-solid"></i></span>
<?php else: ?>
<span class="mpcs-lesson-not-complete"><i class="mpcs-circle-regular"></i></span>
<?php endif; ?>
</div>

<div class="mpcs-lesson-link">
<i class="<?php echo esc_attr($lesson->post_type); ?>-icon"></i>
post_title); ?&gt;

is_complete()) : ?&gt;

<span class="mpcs-lesson-list-quiz-score">(get_score_percent()); ?&gt;)</span>
<?php endif; ?>
</div>

<div class="mpcs-lesson-button">

Una vez hecho esto, vaya a la página wp-content/themes/YOUR-CURRENT-THEME/ y cree una nueva carpeta llamada memberpress. Dentro de esa carpeta, crea otra llamada cursos. Después, pega el archivo que acabas de editar en esa carpeta. La estructura de carpetas en la que se coloca el archivo debe tener este aspecto: wp-content/themes/YOUR-CURRENT-THEME/memberpress/courses/courses_classroom_section_lessons.php.

Ya está. Sus lecciones protegidas deberían mostrar ahora un icono de candado antes de su título en lugar del icono de documento por defecto en el esquema del curso. Además, se desactivará el enlace a la lección protegida.

SOLUCIÓN DE PROBLEMAS:

Si no funciona, es posible que tengas que comprobar las herramientas de desarrollo de tu navegador para ver si aparece algún error en la consola.

¿Le ha resultado útil este artículo?

Artículos relacionados

chica del ordenador

¡Consiga MemberPress hoy mismo!

Empieza a cobrar por los contenidos que creas.