SleekView for LearnPress: user items, orders & quizzes as tables
LearnPress writes every course, lesson, quiz, and assignment as a row in wp_learnpress_user_items. SleekView turns that table — plus the orders and meta — into a real grid course teams can edit inline.
♾️ Lifetime License available
Finally see every LearnPress user item
LearnPress is unusual: it tracks almost everything as a row in wp_learnpress_user_items with extra fields in wp_learnpress_user_itemmeta. Courses, quizzes, lessons, assignments — all user items, all keyed on user and parent course. The default admin never exposes this directly. The Orders, Courses, and Quizzes screens are three siloed slices, and item meta is invisible without custom SQL.
SleekView keys its grid directly on user items. One row per relationship — a learner enrolled in a course, a learner who took a quiz, a learner who submitted an assignment — joined to the WordPress user, the course post, the order from wp_learnpress_order_items, and any meta a course author has added. Filter to lessons only, expand a row to see every child item under a parent course, or pull a quiz-attempt history without writing a query.
Inline edits cover grade, expiration, and status, with writes routed through LearnPress hooks so completion emails and certificate generation behave the same as a native edit. Bulk pass, fail, or reset operations work over filtered selections — useful when an offline cohort needs a re-take or a stuck enrolment from the WP-Cron statistics job needs unblocking. Add-ons like Assignments add their own item types into the same grid, never a fourth admin tab.
Workflow
Read user-items, write through LearnPress hooks
Base on user items
wp_learnpress_user_items as the source so each row represents a learner-to-content relationship — course, lesson, quiz, or assignment, with status and grade already present.
Pull meta and orders
wp_learnpress_user_itemmeta for custom fields and wp_learnpress_order_items so price, gateway, and order status sit on the same row as the enrolment.
Build cohort views
Enable safe inline edits
Sample columns
A typical LearnPress enrolment view
wp_learnpress_user_items, wp_learnpress_user_itemmeta, wp_learnpress_order_items
| Learner | Item | Type | Status | Grade | Started |
|---|---|---|---|---|---|
| Hannah Park | Mastering CSS Grid | Course | In progress | — | 2026-03-22 |
| Marco Bellini | Final Quiz: CSS Grid | Quiz | Passed | 88% | 2026-04-11 |
| Olu Adebayo | Beginner Spanish | Course | Failed | 42% | 2026-02-08 |
| Lina Hoffman | WordPress Theming | Course | Completed | 96% | 2026-01-30 |
Comparison
Default LearnPress admin vs SleekView
Default LearnPress admin
- The default Orders, Courses, and Quizzes screens never join up, so finding one learner takes three clicks.
-
User item meta in
wp_learnpress_user_itemmetais invisible without writing custom SQL. - Quiz history shows attempt counts but no quick way to inspect or override grades.
- Bulk-completing or rolling back enrolments is not a built-in option.
- Reports rely on the WP-Cron statistics job, which is slow on large catalogues.
SleekView
- Joins user items, courses, quizzes, and orders into one grid keyed on the learner.
- Inline edit grade, status, or expiration without reloading the page.
- Save filtered views by course, instructor, status, or order date.
- Bulk pass, fail, or reset selected rows from a single dropdown.
-
Export the visible rows to
CSVfor instructor or finance review.
Features
What SleekView gives you for LearnPress
User-item joins
Built around the LearnPress user-items model so courses, lessons, quizzes, and orders land on the same row keyed on the learner.
Cohort filters
Filter by course, status, instructor, or order date and save a view per team or instructor — opened with one click rather than rebuilt every week.
Override grades
Edit grade, expiry, or completion right inside the cell when a quiz attempt needs a manual fix, with writes flowing through LearnPress hooks.
Audience
Who uses SleekView for LearnPress
Course operations
Track every learner from order to certificate without bouncing across admin tabs — one row tells the full story of an enrolment.
Instructors
Open one filtered view of their own students, grade quiz attempts inline, and clear a backlog without opening each attempt in a modal.
Support teams
Search a learner by email, override a stuck enrolment, resend the receipt, and close the ticket in seconds rather than four screens.
The bigger picture
Why one user-items table needs one grid
LearnPress made an opinionated choice years ago: store every learner-to-content relationship as a row in a single user-items table. That choice powers a lot of the plugin's flexibility — assignments, quizzes, custom item types, all live in the same model. But the default admin never reflects it.
Three screens, three siloed slices, and a learner who has touched a course, a quiz, an assignment, and an order needs four clicks to see in full. The tax of that mismatch falls hardest on support and instructors. A learner emails saying their certificate did not generate.
The fix usually means inspecting the user item, checking the related quiz attempt, confirming the order status, and possibly forcing completion. Today that is a slow round-trip. With one grid keyed the way LearnPress already stores its data, it is one row, one filter, one inline edit.
The plugin's data model has always been good — the missing piece was an admin shaped to match it.
Questions
Common questions about SleekView for LearnPress
Reads come straight from wp_learnpress_user_items for speed, while writes go through LearnPress hooks so completion, emails, and certificates stay correct. The grid never bypasses the plugin's lifecycle for state changes — only for the read path, where direct queries beat REST round-trips on large catalogues.
Yes. Filter the user items grid to lessons only, or expand a row to see every child item under a parent course. Lesson status, completion timestamp, and any custom meta the course author added all appear as columns and can be filtered like any other field.
 
Orders join via wp_learnpress_order_items, so price, status, and gateway can sit next to enrolment data on the same row. Filter the grid to refunded orders, sort by order date, and bulk-unenrol — the kind of cleanup the default admin makes painful.
Assignment user items appear in the same grid alongside courses and quizzes, with grade and submission status as columns. Instructors can filter to ungraded assignments, mark them inline, and the LearnPress hooks fire so the learner's dashboard updates immediately.
 
Filter to the quiz, select the rows, and choose Reset from the bulk menu — the operation runs through LearnPress so attempt counts, retake limits, and gating logic stay correct. Useful for a cohort that hit an error or for granting a fresh attempt after a course update.
Offline course user items are tagged with their delivery type and can be filtered like any other row. Manual completion edits work the same way as online courses, so a trainer can mark attendance from a saved view at the end of a session.
 Build a filter on status equals enrolled plus completion percentage equals one hundred — those are the rows where the stats job did not finalise. A bulk action then forces completion through the LearnPress API, generating certificates and emails as if the cron had run normally.
 Co-instructor relationships join onto the course post and appear as a column on every enrolment row. Each co-instructor can save a private view scoped to courses they teach, see only their own students, and grade attempts without seeing the rest of the catalogue.
 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.
Lifetime ♾️
Most popular
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
€749
Continue to checkout