コード例 #1
0
 /**
  * Sets the stats boxes to render
  * @since  1.2.0
  * @return array $stats_to_render of stats boxes and values
  */
 public function stats_boxes()
 {
     // Get the data required
     $user_count = count_users();
     $user_count = apply_filters('sensei_analysis_total_users', $user_count['total_users'], $user_count);
     $total_courses = Sensei()->course->course_count(array('publish', 'private'));
     $total_lessons = Sensei()->lesson->lesson_count(array('publish', 'private'));
     /**
      * filter the analysis tot grades query args
      */
     $grade_args = apply_filters('sensei_analysis_total_quiz_grades', array('type' => 'sensei_lesson_status', 'status' => 'any', 'meta_key' => 'grade'));
     $total_grade_count = Sensei_Grading::get_graded_lessons_count();
     $total_grade_total = Sensei_Grading::get_graded_lessons_sum();
     $total_average_grade = 0;
     if ($total_grade_total > 0 && $total_grade_count > 0) {
         $total_average_grade = abs(round(doubleval($total_grade_total / $total_grade_count), 2));
     }
     $course_args = array('type' => 'sensei_course_status', 'status' => 'any');
     $total_courses_started = Sensei_Utils::sensei_check_for_activity(apply_filters('sensei_analysis_total_courses_started', $course_args));
     $course_args = array('type' => 'sensei_course_status', 'status' => 'complete');
     $total_courses_ended = Sensei_Utils::sensei_check_for_activity(apply_filters('sensei_analysis_total_courses_ended', $course_args));
     $average_courses_per_learner = abs(round(doubleval($total_courses_started / $user_count), 2));
     // Setup the boxes to render
     $stats_to_render = array(__('Total Courses', 'woothemes-sensei') => $total_courses, __('Total Lessons', 'woothemes-sensei') => $total_lessons, __('Total Learners', 'woothemes-sensei') => $user_count, __('Average Courses per Learner', 'woothemes-sensei') => $average_courses_per_learner, __('Average Grade', 'woothemes-sensei') => $total_average_grade . '%', __('Total Completed Courses', 'woothemes-sensei') => $total_courses_ended);
     return apply_filters('sensei_analysis_stats_boxes', $stats_to_render);
 }