How to Create a Course in LifterLMS: From Blank Page to Published
Build one LifterLMS course from start to finish: the course post, Course Options, the outline, lesson content, a quiz, an access plan, publishing…
Read articleThe LifterLMS setup wizard is the short guided screen that appears the first time you activate the plugin. It takes about five minutes, and it is optional. It is also easy to click through without knowing what each choice does, which is how people end up with a checkout page nobody can find or a currency they did not mean to pick.
This guide walks through every screen of the wizard in LifterLMS 10.x: what it asks, what it saves behind the scenes, and what it leaves for you to do afterwards. It is for site owners setting up LifterLMS for the first time and for developers who want to know exactly what the wizard changes before they run it on a client site.
If you want the full start-to-finish setup, including your first course, our step-by-step LifterLMS setup guide covers that. This article stays focused on the wizard itself.
On a fresh install, activating LifterLMS sets a flag that redirects you to the wizard on your next admin page load. The screen lives at wp-admin/admin.php?page=llms-setup and is titled LifterLMS Setup Wizard.
Three details are worth knowing before you start:
The wizard has five steps, listed across the top of the screen: Welcome!, Page Setup, Payments, Coupon and Finish. Page Setup and Payments each have a Save & Continue button and a Skip this step button, and an Exit Setup link takes you to the settings screen if you want to leave part way through.
The first screen is an introduction. It saves nothing. You get two buttons:
Skipping is a reasonable choice if you are migrating an existing site and already have your pages, or if you configure everything by hand. Just remember that the four core pages then have to be created and assigned yourself.
LifterLMS needs a handful of pages to work. The Page Setup step lists them and creates any that are missing when you click Save & Continue. Each one is also assigned in the relevant settings tab, so LifterLMS knows which page plays which role.
| Page in the wizard | Page title and slug created | Content | Where it is assigned |
|---|---|---|---|
| Course Catalog | Course Catalog, /courses/ | Empty: LifterLMS outputs the catalog | Settings > Courses > Course Catalog |
| Membership Catalog | Membership Catalog, /memberships/ | Empty: LifterLMS outputs the catalog | Settings > Memberships > Memberships Page |
| Checkout | Purchase, /purchase/ | [lifterlms_checkout] | Settings > Checkout > Checkout Page |
| Student Dashboard | Dashboard, /dashboard/ | [lifterlms_my_account] | Settings > Accounts > Dashboard Page |
Two things catch people out here. First, the checkout page is titled "Purchase", not "Checkout", so it is easy to overlook in the Pages list. Second, the pages are created as published pages but are not added to any menu. The wizard reminds you of this with a link to Appearance > Menus. At minimum, students need a way to reach the Student Dashboard, usually a "My Account" or "Log in" link in the header.
The step is careful about existing pages. If a page is already assigned to a role, LifterLMS keeps it. If not, it looks for an existing page that contains the right shortcode (for the checkout and dashboard) or uses the right slug (for the catalogs) and assigns that before creating anything new. If you deleted one of these pages at some point, running this step again recreates it. LifterLMS documents the four required pages and how to create them manually if the wizard fails.
This screen asks three things and saves them as soon as you continue.
"Which country should be used as the default for student registrations?" This becomes the Country setting on the Checkout tab. It pre-selects the country field on registration and checkout forms. It does not restrict who can buy.
"Which currency should be used for payment processing?" This becomes the Currency setting. Pick the currency your payment gateway account settles in. LifterLMS uses one store currency for all prices; it is not a multi-currency system. If your currency is missing, the wizard links to instructions for adding it later with a filter.
The Enable Offline Payments checkbox switches on the built-in Manual gateway. Tick it only if you really will accept bank transfers, cheques or invoices, because an enabled gateway appears as an option at checkout for every paid plan. Our guide to the LifterLMS manual payment gateway explains how those orders are approved.
Notice what is not on this screen: Stripe, PayPal or any other card gateway. Online payment gateways are add-ons, installed separately and configured under LifterLMS > Settings > Checkout. The wizard says as much and links to the gateway add-ons. If you only plan to offer free courses, you do not need a gateway at all; free access plans enroll students without one.
The fourth screen is titled Help Improve LifterLMS & Get a Coupon. Its buttons are Allow and No thanks.
Clicking Allow turns on LifterLMS usage tracking: the plugin sends non-sensitive usage and diagnostic data to LifterLMS, and in return you receive a discount coupon for their add-ons. The data sharing is described on the LifterLMS usage tracking page.
Whether to allow it is a policy decision, not a technical one. On a client site, ask the owner; some organisations have rules about software sending data to third parties. If you allow it and change your mind, go to LifterLMS > Status > Tools & Utilities and use Reset Tracking Settings to opt out.
The last screen confirms you are set up and links to the free LifterLMS Quickstart course, the getting started guide and a set of course blueprints. Below that, it may list a few importable courses and templates fetched from LifterLMS.com, each with a toggle.
Importing a sample course is a quick way to see how sections, lessons and quizzes fit together. On a production site, delete or keep the sample courses in draft before launch so they do not appear in your catalog. If the list of importable courses does not load, your server may be blocking outgoing requests; that does not affect the rest of the setup.
If you are auditing a site or scripting a deployment, it helps to know exactly which WordPress options each step writes. Nothing else is changed.
| Step | Options written | Notes |
|---|---|---|
| Page Setup | lifterlms_shop_page_id, lifterlms_memberships_page_id, lifterlms_checkout_page_id, lifterlms_myaccount_page_id | Each holds the ID of the page for that role |
| Payments | lifterlms_country, lifterlms_currency, llms_gateway_manual_enabled | Defaults are US, USD and offline payments off |
| Coupon | llms_allow_tracking | Set to yes only when you click Allow |
| Finish | None | Imported courses are created as normal course posts |
Because these are ordinary options, a deployment script can set them with wp option update and skip the wizard entirely. Create the pages first, then store their IDs. If you go that route, also flush permalinks once so the catalog and dashboard URLs resolve.
To run the wizard again, go to LifterLMS > Status, open the Tools & Utilities tab and click Return to Setup Wizard. There is also a Launch Setup Wizard link under LifterLMS on the Plugins screen. LifterLMS describes the same route in its article on rerunning the setup wizard.
Rerunning is the fastest fix when one of the core pages has gone missing. Run Page Setup, continue, then exit; nothing else needs to change.
Agencies that build sites from a standard starter, or that provision LifterLMS with a deployment script, often want to stop the automatic redirect. LifterLMS has a filter for exactly that:
<?php
/**
* Stop LifterLMS redirecting to the setup wizard after activation.
* The wizard stays available from LifterLMS > Status > Tools & Utilities.
*/
add_filter( 'llms_prevent_automatic_wizard_redirect', '__return_true' );
To remove the wizard entirely there is a second filter, llms_enable_setup_wizard, which you can return false from. Only do that when your deployment process creates and assigns the core pages some other way, for example with WP-CLI.
The wizard covers pages, country, currency and offline payments. A working course site needs more than that. In rough order of priority:
Our guide to every LifterLMS settings tab goes through each of these screens and the defaults worth changing.
[lifterlms_checkout] shortcode under Settings > Checkout.No. It is a shortcut. Everything it does can be done by hand: create the four pages, assign them in settings, and set country, currency and the Manual gateway on the Checkout tab.
No courses, students or orders are touched. The Payments step does save whatever country, currency and offline payment choice is on screen when you click Save & Continue, so check those values or skip that step.
The wizard requires the WordPress install_plugins capability, which LMS Managers do not have. An Administrator needs to run it.
No. It only enables the built-in offline gateway. Stripe and PayPal are separate LifterLMS add-ons with their own settings on the Checkout tab.
Run the wizard, create the pages, and then spend twenty minutes on the settings tabs before you build content. Fixing a currency or registration decision after launch is always more work than getting it right on day one.
If you are setting up LifterLMS for a client, an organisation, or a site that already has users and content, a short planning session saves a lot of rework. Our LifterLMS development team sets up and configures LifterLMS sites end to end, and you can tell us about your project whenever you are ready.
Build one LifterLMS course from start to finish: the course post, Course Options, the outline, lesson content, a quiz, an access plan, publishing…
Read article
Know what every control in the LifterLMS Course Builder does: section and lesson actions, each field in the lesson settings panel, the quiz editor…
Read article
Add video to a LifterLMS lesson with the Video Embed URL field, choose a host that fits your content, keep large files out of the media library, and…
Read articleSkip the trial and error. Get specialist LifterLMS help and ship faster.