1. Install
- Go to Appearance > Themes > Add New > Upload Theme, choose
lectern-1.0.0.zip, click Install Now, then Activate. - The Lectern Engine plugin is inside the theme. It installs and activates itself when you activate the theme, and each theme update brings the matching engine update. There is nothing else to download.
- You land on Lectern > Dashboard, which shows your stats and a setup checklist.
Requirements: WordPress 6.5+, PHP 7.4+ and pretty permalinks (Set up my site turns them on for you).
2. Set up my site (one click)
Open Lectern > Set up my site, pick a category preset and click the button. It creates:
- Pages: Home, Courses (the marketplace app), Log in, Sign up, Marketplace terms, Privacy and Try the demo.
- The main menu (Courses, My learning, Teach) and the footer menu.
- Categories from the preset.
- Optional demo content: 8 demo members (instructors and students), 10 courses with sections, video, text and quiz lectures, enrolments, reviews and a Q&A thread. All of it is marked as demo, and Remove demo content deletes it cleanly.
Running it again is safe. It never duplicates pages, menus, categories or demo content.
3. Instructors and profiles
- Anyone can sign up. Ticking I also want to teach on the sign-up form, or opening Teach > Become an instructor, turns the account into an instructor.
- Instructor profiles show the photo, headline, bio, courses, total students, reviews and average rating.
- The instructor dashboard (Teach) lists courses with their status, students, revenue and rating, plus coupons, earnings, withdrawals and student questions.
4. Course builder
- Basics: title, subtitle, category, level, language, price (0 for free), cover image, description, what students will learn and requirements.
- Curriculum: add sections, then lectures inside each section. Reorder with the arrows.
- Lecture types: Video upload (stored privately), YouTube or Vimeo embed, Text article and Quiz (one question per block, the correct answer marked with *). Any lecture can carry PDF or file resources and can be a free preview.
- Submit for review. With course approval switched on, an admin approves or rejects it (with a note); otherwise it goes live at once.
Uploaded videos and resources are never public links. They are served through an access check, so only enrolled students, the instructor and admins can open them.
5. Students: learning, certificates and reviews
- Course page: what you'll learn, requirements, curriculum with preview lectures, the instructor and a rating breakdown with reviews.
- Browse: categories, search and filters (category, level, price, rating) with sorting.
- Player: video, embed, article or quiz with a course-content sidebar. Students mark lectures complete, progress is tracked and videos resume where they stopped.
- Certificate: at 100% (and passing every quiz) a certificate with a verification code appears. Students print it or save it as PDF from the browser.
- Reviews, lecture Q&A (instructor answers are highlighted), a wishlist, notifications and messages.
6. Cart, coupons and checkout
- Students add courses to the cart and pay for the whole cart in one Stripe Checkout. Free courses enrol at once.
- Instructors create coupon codes for their own courses (percentage off, optional limit and end date). Students enter a code in the cart.
- After payment, Stripe's signed webhook enrols the student. If the webhook is missing, the return page confirms the payment with Stripe instead.
7. Money: commission, earnings, refunds and withdrawals
- Every sale is split: your commission % and the instructor's share.
- Instructor earnings stay pending for the hold period (at least the refund window) and then become available.
- Students can request a refund within the refund window if they have watched less than the set share of the course. Admin approves or declines; approved refunds go back through Stripe and remove access.
- Instructors request a withdrawal of their available balance above the minimum. You pay them by your chosen method and click Mark paid.
8. Admin
| Dashboard | Members, instructors, courses, pending approvals, enrolments, refunds, sales and revenue. |
| Courses | Approve, reject with a note, feature or remove courses. |
| Sales & refunds | All paid items; approve or decline refund requests. |
| Revenue report | Sales, your commission and instructor earnings by month and by instructor. |
| Withdrawals | Mark paid or reject instructor withdrawals. |
| Reports | Reported courses, reviews, questions and members: close or remove. |
| Categories, Members, System | Edit categories, see instructors with their stats, and check system status. |
9. Connect Stripe
- In Stripe, go to Developers > API keys and copy your Secret key. Use the test key (
sk_test_…) while you try the site, and the live key when you open. - Paste it into Lectern > Settings > Stripe and save.
- Click Create Stripe webhook. Lectern registers
/wp-json/lc/v1/stripeforcheckout.session.completed,checkout.session.async_payment_succeededandcharge.refunded, and saves the signing secret automatically. You can also create the webhook by hand and paste itswhsec_…secret. - Optional: turn on the customer portal in Stripe so students can view receipts.
Keys are stored in your WordPress database and are never shown in full after saving. Card details only ever go to Stripe.
10. Settings
| General | Marketplace name, tagline, category preset, brand colour, open sign-up, approve new courses, certificates, quiz pass mark. |
| Money | Currency, commission %, hold days, refund window, maximum watched % for refunds, minimum withdrawal, payout methods, Stripe Connect. |
| Uploads | Maximum image, video and file sizes. |
| Safety | New courses per day, questions and messages per hour, blocked words, and how often to check for new messages. |
The logo and site icon come from Appearance > Editor or Settings > General, like any WordPress site.
11. Demo mode (optional plugin)
lectern-demo-mode.zip is only for public demo sites. It shows a product homepage to guests, adds one-click Instructor and Student logins to the Try page, and stops demo accounts from changing passwords or profiles, deleting courses or opening the billing portal. Do not install it on your real marketplace.
12. FAQ
Do I need any other plugins?
No. The engine is bundled and it uses Stripe directly.
Where does the money go?
Into your own Stripe account. You keep your commission and pay instructors through withdrawals.
A student paid but has no access.
Check that the webhook exists (Settings > Stripe shows its status). The return page also confirms the payment, and returning to it is always safe.
Can students download paid videos by link?
No. Private files are served only after an enrolment check.
How do I remove the demo content?
Lectern > Set up my site > Remove demo content.