LLMS_Lesson::get_previous_lesson()
Get previous lesson id
Description Description
Return Return
(int) [ID of previous lesson]
Source Source
File: includes/models/model.llms.lesson.php
public function get_previous_lesson() { $parent_section = $this->get_parent_section(); $current_position = $this->get_order(); $previous_position = $current_position - 1; if ( 0 != $previous_position ) { $args = array( 'posts_per_page' => 1, 'post_type' => 'lesson', 'nopaging' => true, 'post_status' => 'publish', 'meta_query' => array( 'relation' => 'AND', array( 'key' => '_llms_parent_section', 'value' => $parent_section, 'compare' => '=', ), array( 'key' => '_llms_order', 'value' => $previous_position, 'compare' => '=', ) ), ); $lessons = get_posts( $args ); //return the first one even if there for some crazy reason were more than one. if ( $lessons ) { return $lessons[0]->ID; } else { return false; } } else { // See if there is a previous section $parent_course = $this->get_parent_course(); $cursection = new LLMS_Section( $this->get_parent_section() ); $current_position = $cursection->get_order(); $previous_position = $current_position - 1; if ( 0 != $previous_position ) { $args = array( 'post_type' => 'section', 'posts_per_page' => 500, 'meta_key' => '_llms_order', 'order' => 'ASC', 'orderby' => 'meta_value_num', 'meta_query' => array( 'relation' => 'AND', array( 'key' => '_llms_parent_course', 'value' => $parent_course, 'compare' => '=', ), array( 'key' => '_llms_order', 'value' => $previous_position, 'compare' => '=', ) ), ); $sections = get_posts( $args ); if ( $sections ) { $newsection = new LLMS_Section( $sections[0]->ID ); $lessons = $newsection->get_lessons( 'posts' ); if ( ! $lessons ) { return false; } return $lessons[ count( $lessons ) - 1 ]->ID; } else { return false; } } }// End if(). }
Expand full source code Collapse full source code View on GitHub
Changelog Changelog
Version | Description |
---|---|
1.0.0 | Introduced. |
User Contributed Notes User Contributed Notes
Permalink: