Keap

How to Suppress Hidden Lessons and Topics on LearnDash Course Pages

Summary
Requires Modification of LearnDash Templates

Requires Modification of LearnDash Templates

This patch is for LearnDash displayed courses, and does not work with 3rd Party Templates such as BuddyBoss Social Learner.

Filename: /wp-content/plugins/sfwd-lms/templates/course.php
Filename: /wp-content/plugins/sfwd-lms/templates/course_content_shortcode.php

Add the following code near the top of the file, after the comments.

This code walks the lesson and topics arrays provided to the template, and rebuilds them without any of the content shielded by Memberium content protection.

<?php
// Start Memberium Code

if ( function_exists( 'memb_hasPostAccess' ) ) {
$i = array();
foreach( $lessons as $lesson ) {
if ( memb_hasPostAccess( $lesson['post']->ID ) ) {
$i[] = $lesson;
}
}
$lessons = $i;
unset( $i, $lesson );

$i = array();
foreach( $lesson_topics as $lesson_id => $lesson_topic ) {
if ( memb_hasPostAccess( $lesson_id ) ) {
foreach( $lesson_topic as $array_id => $topic ) {
if ( memb_hasPostAccess( $topic->ID ) ) {
$i[$lesson_id][$array_id] = $topic;
}
}
}
}
$lesson_topics = $i;

unset( $i, $topic, $lesson_topic );
}

// End Memberium Code
?>
  • Was this Helpful?
  • YesNo