User Courses
User Courses
Prints the logged-in student's enrolled courses as LifterLMS course cards, using the same "My Courses" loop that LifterLMS shows on its student dashboard. Unlike the Course List widget, which queries the whole catalog and offers its own enrollment filters and a custom card template, this widget always lists the current user's enrollments with LifterLMS's native card; unlike User Dashboard, which embeds the whole dashboard with its tabs, it prints only the course list.
Usage
"My courses" page — Place the widget on a page that only logged-in students reach, with Type on Display all the courses, to give students a paginated list of everything they are enrolled in with each course's enrollment status and date.
Recent courses block on a custom dashboard — Set Type to Display only recent courses to print a short, unpaginated row of courses, and pair it with User Memberships, User Achievements and User Certificates to build a dashboard layout of your own instead of embedding the full User Dashboard.
Hide the empty state from visitors — Wrap the widget in a container that uses Conditional Logic to show only for logged-in users, and place a Login Form in a sibling container for everyone else.
How it works
The widget calls LifterLMS's lifterlms_template_my_courses_loop() for the current user, so its output, ordering and pagination follow LifterLMS's own dashboard settings rather than controls on the widget.
| Situation | Behaviour |
|---|---|
| Visitor is logged out | LifterLMS has no student to query, so the widget renders nothing. |
| Logged-in user with no enrollments | Prints the paragraph "You are not enrolled in any courses." (developers can change it with the lifterlms_dashboard_courses_not_enrolled_text filter). |
| Type is Display all the courses | Lists the student's enrolled courses, paginated at the Courses per page value from LifterLMS > Settings > Courses (default 9). |
| Type is Display only recent courses | Lists the same courses limited to a single row (the catalog column count, default 3), with no pagination. |
| Ordering | Follows Courses Sorting under LifterLMS > Settings > Accounts, the same option that orders the dashboard's in-progress courses. |
| Each course card | LifterLMS's standard loop card with the enrollment status and enrollment date added after the title, as on the student dashboard. |
Settings
Content
| Setting | Description |
|---|---|
| Type | Display all the courses (default) prints the full, paginated list of the student's enrolled courses. Display only recent courses prints one row of courses without pagination. |
Advanced
The Advanced tab holds Elementor's own layout, motion, responsive and custom-CSS controls — see Elementor's documentation. Lifter Elements adds one section, Conditional Logic, which shows or hides this widget by the visitor's LifterLMS status — see the Conditional Logic reference.
Notes
- The widget has no Style tab. Cards use LifterLMS's loop markup and stylesheet (
llms-loop-itemclasses), so style them with LifterLMS's own settings, your theme, or custom CSS on the Advanced tab. - For a course list you can filter, sort and design card by card, use Course List with Filters: left on its enrolled-courses default.
- Related: User Dashboard, User Memberships, Course List.