Spaces
Pro feature
🔶 Pro feature. Available in Learnomy Pro.
Spaces are organisation or group accounts inside your LMS. Think of each space as a mini-school: it has its own roster of students and its own set of assigned courses. When you add a member to a space, they are automatically enrolled in every course assigned to that space. When you add a new course to a space, every existing member is automatically enrolled in it.
A typical use case is a corporate client who buys access for their whole team. You create one space for them, assign the relevant courses, and add their staff. All staff get access immediately without you having to enroll each person one by one.
Overview
Go to Learnomy > Pro Tools > Spaces to see all spaces. The list shows each space's name, member count, assigned course count, status, and subscription status.

Filter the list using the links above the table: All, Active, Inactive, Recurring, Past Due, Cancelled, Expired.
Creating a space
Click Add new. A create form slides into view.

Enter a space name (for example, "Acme Corporation Training") and set the initial status to Active. Save the space. The new space appears in the table.
The space detail page
Click the space name or the Manage action to open the space detail page. The page has three tabs, each with a live count in its label: Members, Courses, and Groups. The header shows seat usage (for example, "12 / 50 seats used") or a plain member count when the space has no seat limit.

Use the tabs to switch between managing members, assigning courses, and working with sub-groups. Groups are covered on their own page (see Groups below).
Assigning courses to a space
Open the space detail page and switch to the Courses tab.
Choose a published course from the picker and click Assign.

Only published courses that are not already assigned appear in the picker. Every current space member is enrolled in the newly assigned course automatically.
To remove a course from the space, click Remove next to it. Members keep their existing enrollments.
Adding members
On the space detail page, open the Members tab.

Type a member's email address into the add-member field, choose a role from the dropdown (Student or Manager), and click Add.
The user is added to the space and auto-enrolled in all assigned courses. If the user account does not exist, an invitation is queued.
To add many members at once, use the invite link (see below).
Changing a member's role
Each member row has a role dropdown set to Student or Manager. Change the dropdown to promote a member to Manager or demote a Manager back to Student. The change applies straight away. Use the Remove button on the row to take a member out of the space.
A Manager added here is a space-wide manager. To put someone in charge of just one group instead, use a group-scoped manager from the Groups tab (see Groups).
Invite links
On the Members tab, open Or share an invite link to copy the shareable invite link. The link is valid for 7 days, and multiple people can use the same link during that window.
Anyone who clicks the link lands on a branded invite page inside your site, not the bare WordPress login screen. The page shows the space name and description and handles every case on one screen:
- A logged-out visitor sees the invite details with an inline Log in & accept form and a Create an account link. Both bring them back to the same page to finish joining.
- A logged-in visitor who is not yet a member sees an Accept invitation button.
- An expired or already-used link shows a friendly "no longer valid" notice with a link to browse courses.
- If the space has hit its seat limit, the page explains the space is full and asks the visitor to try again once a seat is free.
Once they accept, they are added to the space, auto-enrolled in every assigned course, and sent to the space page.
Pending join requests
Students can request access to a space. When there are pending requests, a notice appears at the top of the Spaces list page.

Click the notice or open the space's detail page to see the request queue. You can Approve or Decline each request individually.
Space seat packs
If you sell seat packs (bundles of additional student seats), manage them from Learnomy > Pro Tools > Spaces > Seat Packs (the Plans/Seat Packs tab).

The seat packs table shows each pack name, the number of seats it contains, the price, and its status. Use Add new to create a pack, and the row action menu to edit or delete existing ones.

Spaces can be configured to require a seat pack purchase. When a student attempts to join a space that has run out of seats, they are directed to buy more.
Subscriptions
Spaces support recurring subscriptions via Stripe. When a subscription is active, it appears in the Subscription column of the spaces list. The cron job learnomy_pro_space_subscription_sweep runs daily to detect past-due or expired subscriptions and update space status accordingly. PayPal recurring subscriptions for space plans are planned for a future release.
The daily sweep processes cancelled subscriptions whose billing period has ended in bounded pages of 100 rows at a time, rather than one unbounded query, so a large backlog of expiring subscriptions is drained completely in one run instead of only the first batch being processed. Developers can change the page size with the learnomy_pro_space_expiry_batch filter (default 100).
The member experience
Members visit /spaces/{slug}/ on the frontend to see their space. The page shows the space name, a member count, and clickable course cards for every assigned course. Clicking a card takes the student directly to the course page.
The Space Owner dashboard
A space owner or space-wide manager has their own self-service dashboard at /spaces/{slug}/manage/, separate from the wp-admin space detail page. It is a set of widgets covering the day-to-day running of the space:
- Courses - the space's assigned courses, plus an Add a course search. An owner or manager can search and add a course themselves without asking an admin, but only from what they are entitled to: any free published course, or a course bundled in the space's plan. Admins can add any course from wp-admin as described above. If a wanted course isn't in the owner's entitlement, they can send a Request a course note to the site admin instead, and any pending requests show underneath.
- Members - add, remove, and manage member roles, the same actions available from the wp-admin Members tab.
- Groups - manage sub-groups when the space uses them.
- Reports - per-course enrollments, completions, average progress, and spend across the space's members. Click Export CSV to download the per-course breakdown as a spreadsheet.
- Billing, KPIs, Invite, and Announce widgets round out the dashboard with subscription/seat status, at-a-glance numbers, the shareable invite link, and a way to post an announcement to members.
Groups
A space can be split into sub-groups. A group is a sub-segment inside a space (a subject, a class, a department), and a member can belong to no group, one group, or several at once. A space with no groups behaves exactly like a flat space, so groups stay out of your way until you create the first one. You manage groups from the Groups tab on the space detail page (and space owners and managers can also manage them from the frontend manage page).
Groups let you assign a course to only certain members, and let you put a manager in charge of just one part of the space. They are covered in full on their own page.
See Space Groups for creating groups, adding members and managers to a group, assigning courses to a group, exclusive group-course access, and how course access combines across the space and its groups.
Space Manager role
A member with the Manager role helps run the space without needing WordPress admin access. There are two kinds of manager, and the owner picks which one per person:
- Space-wide manager: manages the whole space. They can add and remove members, change member roles, assign and remove courses, manage groups, and view reports for the space, like the owner but without owning it.
- Group-scoped manager: manages only the members and courses of their assigned group or groups. When they open the manage page they see only the groups they manage. They cannot create or delete groups, assign other managers, touch groups they do not manage, or change a course's access scope.
The Manager role is a member-row designation, not a WordPress capability. To make someone a space-wide manager, set their role to Manager on the Members tab. To make someone a group-scoped manager instead, add them as a manager of a specific group from the Groups tab. Scoping is enforced on every group action on both the frontend and the REST API. See Space Groups for the full detail.
Linking a Space to a community (with BuddyNext Pro)
If you also run BuddyNext Pro, a Space (or an individual course) can be linked to a BuddyNext community so that members join the community automatically. When someone is added to the Space or enrolls in the linked course, BuddyNext Pro adds them to the community; when they leave, it removes them from any community it created for the link.
This linking is a BuddyNext Pro feature. Learnomy does not manage communities itself. What Learnomy provides is the extension points BuddyNext Pro attaches to, so when both plugins are active you manage the link from Learnomy's own screens:
- A Community card on the Space detail page (admin), and on the public Space header, added by BuddyNext Pro.
- A community card in the single-course sidebar for a course-level link.
If BuddyNext Pro is not installed, these controls do not appear and the Space behaves normally. See the BuddyNext Pro documentation for how to create and manage the link.
Tips
- Deleting a space does not unenroll its members from courses. Enrollments persist after a space is deleted.
- Branded subdomains (for example,
acme.yourdomain.com) and per-space email templates are planned for a future release. - Bulk onboard is available: paste a list or upload a CSV of emails on the Members tab (
POST /spaces/{id}/members/bulk), or share the invite link / invite code. Seat limits are enforced on insert. - Owners and managers can download a compliance-style progress report as CSV from the space reports UI (
GET /spaces/{id}/reports/export). - The shareable invite link is a signed URL (HMAC-SHA256 with a 7-day expiry). No token is stored server-side; the expiry and signature are verified from the URL itself.
For developers
The columns shown in the space members widget can be customised with the learnomy_pro_space_member_columns filter, which receives the current column list and the space ID. Use it to add or reorder columns in the member roster.
Learnomy exposes extension points on the Space screens so companion plugins (such as BuddyNext Pro, above) can add their own controls without modifying Learnomy:
learnomy_pro_space_front_header_end(action) fires at the end of the public Space header, passing the space and whether the current user is a member.learnomy_admin_space_detail_tabs(filter) lets a plugin add a tab to the admin Space detail page.learnomy_admin_space_detail_panels(action) renders the matching tab's panel, passing the space and the active tab key.
The single-course sidebar exposes learnomy_course_sidebar_card_footer (action, passes the course) for a course-level card in the same way.