✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount
✨ New Plugin Alert ✨ SleekRank is now available with €50 launch discount

SleekView for Good LMS: courses, lessons & student enrolments as tables

Read straight from good_lms_user_courses, good_lms_user_lessons, and the good_lms_course CPT. Compose per-student progress tables, instructor grading queues, and stalled-learner reports in one screen.

♾️ Lifetime License available

SleekView table view for Good LMS

Course-enrolment data as a workspace, not a list of profiles

Good LMS stores courses, lessons, and quizzes as the CPTs good_lms_course, good_lms_lesson, and good_lms_quiz with per-student state captured across good_lms_user_courses, good_lms_user_lessons, and good_lms_user_quizzes. The default admin lists each object in its own screen and stops there: drilling into a student profile to see lesson-level completion is a separate click for every lesson, and there is no built-in way to combine progress with quiz scores in one view.

SleekView reads the custom tables directly so support reps see a single row per student per course with completion percentage, current lesson, last activity, and quiz pass rate side by side. Instructors get a grading queue filtered to pending quiz attempts sorted oldest first, and L&D admins get cohort comparisons that filter on enrolment_date ranges without exporting CSVs.

Edits to enrolment status route through Good LMS's standard update functions so completion hooks fire, certificates issue, and notifications send. Direct-table writes are available for back-fill scenarios where side effects should stay quiet. WordPress capability gating scopes views per role so instructors only see their own courses' grading lists.

Workflow

Good LMS views without scripting

1

Pick a source

Start from good_lms_user_courses for enrolment views, good_lms_user_quizzes for grading, or the good_lms_course CPT for catalogue admin.
2

Compose columns

Add columns from joined tables (lesson progress, quiz averages, course postmeta) by drag and drop. New custom meta keys appear automatically as available columns.
3

Save per-role views

Gate views by WordPress capability so instructors, support, and L&D admins each see a tailored column set on the same underlying data.
4

Edit inline or in bulk

Update enrolment status or grade pending quiz attempts inline. Bulk edits run through the Good LMS update functions when supported, with direct-table fallback for silent back-fills.

Sample columns

A typical Good LMS enrolment view

Per-row enrolment from good_lms_user_courses joined with the good_lms_course post.
Source: wp_good_lms_user_courses + wp_good_lms_user_lessons + wp_good_lms_user_quizzes + wp_posts (post_type=good_lms_course)
Student Course Progress Quiz Avg Status Enrolled
alex@studio.co Intro to Photoshop 82% 88 In Progress Apr 12
ria@design.io CSS Fundamentals 100% 94 Completed Mar 28
tom@hello.dev Full Stack Bootcamp 31% 62 In Progress Apr 02
mia@brew.coop JS Basics 12% Stalled Mar 19

Comparison

Default Good LMS admin vs SleekView

Default Good LMS admin

  • Course, lesson, and student screens are separate, no unified per-student view
  • Combining good_lms_user_courses progress with good_lms_user_quizzes scores needs SQL
  • No saved-filter grading queue across quizzes in the default admin
  • Stalled-learner detection requires custom WP_Query against good_lms_user_courses
  • Bulk enrolment status updates aren't a first-class action

SleekView

  • Per-student progress view joining good_lms_user_courses and good_lms_user_quizzes
  • Grading queue filtered to pending quiz attempts across the catalogue
  • Filter by last_activity and enrolment_date to surface stalled learners
  • Pivot good_lms_user_lessons into per-student lesson-completion columns
  • Save views scoped per role: instructor, admin, support

Features

What SleekView gives you for Good LMS

Per-student progress views

Join good_lms_user_courses with good_lms_user_lessons and group by user_id. One row per student per course with progress, last lesson, and quiz average visible together.

Inline grading queue

Filter good_lms_user_quizzes where status = pending, sort by submission date, and grade inline. The Good LMS update API fires so notifications and certificate logic run normally.

Stalled-learner reports

Combine last_activity older than N days with progress under 50% to find learners losing momentum. Trigger follow-up before they churn off the course.

Audience

Who uses SleekView for Good LMS

Instructors

Pending grading queue across every course they author, sorted oldest first. Inline grade entry triggers the standard completion hooks so certificates and notifications behave.

L&D admins

Cohort comparisons filterable by enrolment_date range, course, and category. Surface course-level pass rates without exporting reports to a spreadsheet.

Student support

Single-row student history with course progress, quiz averages, and last activity visible during chats. No bouncing between profile and course screens.

The bigger picture

Why LMS data needs a workspace, not a report

Learning programs succeed or fail on early intervention with stalled learners, and early intervention requires a daily view that the default Good LMS admin doesn't produce. The aggregate course-pass-rate number is helpful for an exec review but useless for a support rep who needs to know which specific learners stopped two weeks in and which lesson they got stuck on. Instructors grading manually want a single queue of pending attempts across every course they teach, not a per-quiz drilldown.

L&D admins comparing cohorts want to filter good_lms_user_courses by enrolment_date range and group by tag in seconds, not by exporting CSVs into a spreadsheet. The data exists already in the Good LMS tables. SleekView's job is to expose those tables as a composable workspace so each role builds the view their job actually requires, with hooks intact when wanted and bulk edits when not.

The result is a quieter admin and a faster loop between learner action and instructor response.

Questions

Common questions about SleekView for Good LMS

No. SleekView reads the standard Good LMS tables (good_lms_user_courses, good_lms_user_lessons, good_lms_user_quizzes) and the related CPTs directly, so no premium reporting add-on is required to build the views described here.

 

Status changes route through Good LMS's update functions so completion, certificate, and notification hooks fire the same as if an instructor used the default admin. Direct-table writes are available for back-fill jobs where side effects should stay silent, opt in per view.

 

Yes. Any custom postmeta on good_lms_course (cohort tags, course owner, internal SKU) becomes a column. Reorder, hide, or filter by it like any built-in column without touching template code.

 

Per-question answers live in the quiz attempt records on good_lms_user_quizzes. SleekView exposes them as a related child view so a quiz attempt drills down into question text, student answer, correct answer, and points awarded for manual review.

 

Queries hit indexed columns (user_id, course_id, status, last_activity) and pagination is keyset where possible. Aggregate columns (course progress percentage across thousands of lessons) are opt-in per view so list scans stay fast.

 

Yes. Filter good_lms_course posts by post_author and instructors see only their own courses' enrolment, progress, and grading lists. Combine with WP capabilities so the scoping is enforced and not just visual.

 

Yes. Each subsite has its own Good LMS tables and SleekView reads the current site's tables only. Cross-site aggregation isn't supported, but per-site dashboards and per-instructor scoping behave the same as on a single install.

 

Yes. Any view exports to CSV or JSON with the exact columns and filters that were on screen. Useful for weekly grading logs to stakeholders or for archiving graded attempts into an external learner-record store.

 

Pricing

More than 1000+
happy customers

Explore our flexible licensing options tailored to your needs. Upgrade your license anytime to access more features, or opt for a lifetime license for ongoing value, including lifetime updates and lifetime support. Our hassle-free upgrade process ensures that our platform can grow with you, starting from whichever plan you choose.

Starter

€79

EUR

per year

  • 3 websites
  • 1 year of updates
  • 1 year of support

Pro

€149

EUR

per year

  • Unlimited websites
  • 1 year of updates
  • 1 year of support

Lifetime ♾️

Most popular

€249

EUR

once

  • Unlimited websites
  • Lifetime updates
  • Lifetime support

...or get the Bundle Deal
and save €250 🎁

The Bundle (unlimited sites)

Pay once, own it forever

Elevate your WordPress site with our exclusive plugin bundle that includes all of our premium plugins in one package. Enjoy lifetime updates and lifetime support. Save significantly compared to buying plugins individually.

What’s included

  • SleekAI

  • SleekByte

  • SleekMotion

  • SleekPixel

  • SleekRank

  • SleekView