LifterLMS – WordPress LMS Plugin for Courses & eLearning

Description

LifterLMS is a secure WordPress LMS plugin packed with features to easily create & sell courses online.

Transform your WordPress website into a professional eLearning platform with every feature you could possibly need from your LMS.

  • Intuitive LMS Course Builder: Create Courses, Sections, Interactive Lessons with Rich Content Including Multimedia and Videos
  • Track Student Progress: In-Depth Reporting, Create Timed or Open Quizzes, Drip Content, Add Prerequisites, Analyze Progress, and Award Certificates
  • Complete Ecommerce Platform: Built-in Gateway Integration for Stripe and PayPal With Memberships and Subscriptions Including Single or Group Enrollment
  • Community and Social Learning: Integrate a Community Forum or Discussion Area, Add Multiple Instructors, and Display Course Reviews for Social Proof

Explore All LMS Features

LifterLMS makes it easy to create, sell, and protect engaging online courses and training based membership websites.

Integrate Your LMS With Any Theme, Page Builder, & Block Editor

LifterLMS works with any well-coded WordPress theme/FSE, the Block Editor (Gutenberg), and every popular WordPress page builder including Elementor, Beaver Builder, and Divi.

Choosing a theme? Check out Sky Pilot, a Block Theme (FSE) built from first principles with 100% focus on meeting the needs of online courses and training-based membership sites built on WordPress.

With over 9 years development, our team is deeply engaged with the WordPress community. We actively encourage our integration partners to create the extensions you need most, like Affiliate WP, Monster Insights, WP Fusion, the most popular form plugins, GamiPress, Astra Pro, and many more.

Don’t see an integration you need? Connect your LifterLMS website to 5,000+ other apps via Zapier.

Open Source, Completely Free Core Plugin

Just like WordPress, LifterLMS gives back to the open source community. The core LifterLMS plugin is a totally FREE forever LMS – no limits on your courses, memberships, enrollments, or earnings.

We believe in free, distributed learning for all. LifterLMS exists to democratize education in the digital classroom.

Premium LMS Add-ons and Bundles

Get to know our team and product by signing up for a $1 temporary 30 Day website. You’ll get instant access to a private demo site hosted on our servers pre-installed with:

  • the core LifterLMS plugin, AND
  • every premium LMS add-on we offer

See why so many people start with or switch from another WordPress LMS or hosted platform to LifterLMS for online course creation, membership sites, and remote schools.

This LMS demo site allows you to test drive the core plugin and all premium add-ons before you invest.

  • You can practice creating an online course with LifterLMS’s industry leading course builder.
  • Or simply take a course yourself on your demo site to test the course experience out for yourself.
  • You can even add your other favorite plugins & themes to your demo site so you can see them in action together with the LMS.

Are you ready to Try LifterLMS for $1? 🚀

LifterLMS is a Perfect Fit For Every WordPress User

Best for Builders
We’re the favorite LMS plugin for WordPress developers, designers and IT pros who build LMS websites and training portals for clients, employers and themselves

Best for Starters
Do-it-yourself innovators love that LifterLMS helps them create high value online courses, coaching or training based membership websites, right on WordPress.

Best for Switchers
Have you outgrown a hosted LMS platform or an incomplete WordPress LMS stack? Choose LifterLMS if you are looking for more power, control and better support.

Meet The LifterLMS Team

The LifterLMS team is a diverse group of talented course creators, developers, designers, marketers and entrepreneurs.

Before developing LifterLMS, we consulted and built custom WordPress-based online learning and membership sites for clients all over the world. LifterLMS was born through this deep hands-on experience building high-end, custom WordPress LMS websites for the expert industry.

Learn more about the people behind LifterLMS here.

LifterLMS WordPress LMS By The Numbers

  • 4,348,041 Course Enrollments powered by LifterLMS
  • 6,570,731 Course and lesson completions powered by LifterLMS
  • 86,807 Achievement badges awarded by LifterLMS
  • 120,728 Certificates awarded by LifterLMS
  • Over 10,000 active installs of the WordPress LMS plugin
  • 267 5 star reviews

LifterLMS Features

Start with our core free WordPress LMS plugin and scale-up as your business grows.

Make Money Building an Education-Based Business
Just set up LifterLMS, activate built-in payments with Stripe or PayPal. That’s all you need to get started on your LMS website journey.

When you need more features and want to expand your online learning business, we are here for you. We have several free and premium add-ons to help you create more value for your students and members, with a focus on scaling your business revenue.

  • Credit card payments
  • One-time payments
  • Recurring payments
  • Payment plans
  • Unlimited course and membership pricing models
  • PayPal
  • Subscriptions
  • Checkout
  • Free courses
  • Course bundles
  • Private coaching upsells
  • Course and membership Coupons
  • Bulk course and membership sales
  • Affiliate ready
  • Native course and membership sales pages
  • Offline course and membership sales
  • Customizable course and membership enrollment
  • Country and currency
  • E-commerce dashboard
  • Credit card management
  • Subscription switching
  • Payment switching
  • Native Zapier integration

Create Courses on Your WordPress LMS Website

  • Course multimedia lessons
  • Course quizzes
  • Course builder
  • Drip Content
  • Course and lesson prerequisites
  • Course tracks
  • Course assignments
  • Quiz time limits
  • Student dashboard
  • Multi-instructor courses
  • Lesson downloads
  • Course import & export
  • Discussion areas
  • Instructional design
  • Forum integrations
  • Graphics pack
  • Course reviews
  • Group enrollments for courses and memberships

Engage Your Students

  • Achievement badges
  • Certificates
  • Personalized email
  • Social learning
  • Private coaching
  • Text messaging

Offer Memberships

  • Sitewide membership
  • Course bundles
  • Traditional memberships
  • Automatic course enrollment
  • Bulk course enrollment
  • Content restrictions outside of a course
  • Members-only payment plans
  • Private group discussions
  • Members-only forums

Integrate your WordPress LMS with the Tools You Need

  • Payment gateways
  • Email marketing
  • Forums
  • Mobile friendly
  • Use any theme or page builder
  • Built for compatibility
  • CRMs
  • E-learning authoring tools
  • Tin Can API (xAPI)

Secure and Protect Your Content

  • Course protection
  • User account management and registration
  • Members only content
  • Course only content
  • Restricted access
  • Password management
  • Self-hosted

Own and Manage Your WordPress LMS Platform

  • Detailed course, membership, ecommerce, and student reporting
  • Course gradebook
  • Email notifications
  • Bulk course and membership enrollments
  • Student management
  • Course and membership access management
  • Web design management
  • Branding & typography
  • WordPress LMS User Roles
  • Security
  • Require terms
  • Scalable
  • Layout
  • Testing tools

Get Support For Your WordPress LMS Project

More Info About LifterLMS

Deliver Beautiful eLearning Experiences with Sky Pilot

Brought to you by the team at LifterLMS, Sky Pilot is the only modern full site editing (FSE) theme in existence. The theme is built from first principles with 100% focus on meeting the needs of online courses and training-based membership sites built on WordPress.

Most themes are built to be desirable by as many people as possible without focusing on a singular niche. Sky Pilot is the opposite.

Sky Pilot is built for course creators by course creators.

Extend and Enhance Your LMS With LifterLMS Add-Ons

Advanced

Increase your LMS website and it’s training program’s value with these engagement add-ons:

Integrations

Integrate your LMS with the third-party tools you know and love:

LMS Website and User Experience Design Tools

Make your online course creations and WordPress LMS platform beautiful

How To Get Support

Our world-class LMS software support has your back and all of our paid products include priority private support with the LifterLMS support team.

  • LifterLMS Support Ticket System, ready for any question you have about your LMS
  • Liftoff Sessions access with live screensharing to help you get started with the LMS software
  • LifterLMS Office Hours is weekly Mastermind group hosted by LifterLMS CEO Chris Badgett and special guests

Save on LifterLMS With A Bundle

Save money while unlocking the full potential of your course building and LMS platform.

  • The Earth Bundle gives you all the essentials you need to get your online learning website up and running so it’s collecting money today with the most powerful secure learning management system software.
  • Level up your online course LMS website with our ecommerce, design, marketing technology, and automation tools with the Universe Bundle.
  • Add even more engagement and student transformation potential to your immersive training programs with our entire suite of products including advanced features used by the best teachers, experts, and coaches with the Infinity Bundle.

Give The Best WordPress LMS Plugin A Try

The best way to know if LifterLMS meets your needs is to take it for a test drive – something you can’t do with a totally premium LMS!

  • Go install the free core LifterLMS plugin right now. See how extensive and customizable our free core plugin truly is.
  • Get a temporary 30 Day website on our servers with the core LifterLMS plugin AND all the premium add-ons installed. This demo website allows you to test drive all the LMS add-ons before you invest. Practice creating an online course, test out the learner experience yourself, and see how easy it will be to manage your course in the WordPress admin. Install your favorite plugins & themes to test compatibility. Try LifterLMS for $1 now.
  • Another way to test LifterLMS out is to see what the student experience is like. Take a free course on how to build a LifterLMS website in 20 minutes. Take a Free Course now.

Scaling LifterLMS From A Simple Online Course

LifterLMS is incredibly flexible, customizable and scalable. It can be used for a simple one course website, and it can also be used as a course marketplace or multi instructor online school.

The plugin is lightweight enough to handle niche sites with low course enrollments, while also powering huge universities and employee training in Fortune 500 corporations. We’ve even worked with a site that has over 730,000 course enrollments.

Unlike hosted LMS software where you would pay increasing monthly fees for access and growth, LifterLMS does not charge you more per course. LifterLMS also does not charge you more per instructor or per student or based on your revenue.

Whether you are going big or keeping it small, LifterLMS scales to meet your needs for online courses, memberships, training portals, or remote schools.

LifterLMS in Action

  • Success Stories — Discover these amazing stories and accomplishments from our community of course creators.
  • Showcase — Check out these websites using LifterLMS

What Others Are Saying About LifterLMS

“I’ve used a number of course creation and delivery platforms over the years. And they were all fine… right up to the day when they weren’t. The trouble is, they all want you to package and manage your course the way THEY think you should do it. THEIR feature set. THEIR way to do it. Now I host all my courses on LifterLMS. TOTALLY different experience, because I’m free to do things MY way. I’ve never yet hit a wall where LifterLMS didn’t enable me to do things the way I wanted. Love it! Great support and community too.”

Nick Usborne, Teacher, Entrepreneur

“WP101.com serves more than 30,000 members, so it’s no small challenge to migrate to a new membership plugin. We spent more than a year carefully evaluating dozens of LMS and membership plugins before we finally discovered LifterLMS (a membership plugin and LMS plugin combined into one). It was the only plugin that checked all the boxes for our needs for course creation and membership functionality. And the LifterLMS team also shares our passion for creating better online learning experiences. In particular, we deeply resonate with their goal of restoring the human touch to online learning—something that is absent from most online courses today.”

Shawn Hesketh, Owner, WP101

“As a former School Teacher, professional User Experience Designer, and current online course creator – I can honestly attribute much of our success to LifterLMS and it’s consideration for multiple learning modalities, the LMS UI/UX out of the box, and natural student Engagement opportunities. In less than 10 months we’ve gone from $0 to $300K in revenue with LifterLMS playing a huge part in that!! I’m looking forward to everything that comes next from the creators of LifterLMS!!”

Sarah Lorenzen, Teacher, Entrepreneur

“LifterLMS has been the best decision we have made towards the build out of our course library, online Learning Management System site, and community. The breadth and depth of what LifterLMS offers in a few WordPress plugins exceeds anything else we evaluated as it includes: easy course construction, integrated eCommerce, community capabilities, gamification and the support for delivery of 1-on-1 coaching collaboration services. Lifter also has pre-built integrations with other key WordPress technologies we wanted to use. LifterLMS has attracted a solid community and support network of leading experts to help guide anyone who wants to transform the world or their industry with online training. Chris and the Lifter team are real people, and they care.”

Michael Wolf, CEO, emPowering NOW LLC (Golden XPR)

“I bought/installed LifterLMS yesterday then spent the day having a blast! Two years ago I started writing a book, which morphed into wanting to present the material online in a more interactive way. I started my website from scratch in January and installing the WordPress LMS plugin was a milestone moment! A milestone moment that turned out to be one joy right after the other! I’m always amazed when something is made easy! The LifterLMS product is amazing!! Power to the people! Really quite extraordinary to have something so helpful be able to be in the hands of regular folk.”

Margot Worthy, Author, Teacher

Join Our Growing Community of Education Entrepreneurs

When you download LifterLMS, you join a thriving community of education entrepreneurs, course creators, developers, LMS professionals, and WordPress enthusiasts.

We’re one of the fastest growing open source eLearning communities online, and everyone that is seeking to build a sustainable online course business is welcome.

Join the LifterLMS VIP Facebook group so you can:

  • check out what other LifterLMS users and course creators are up to, and
  • ask questions and support fellow course creators

We also have an engaged LifterLMS Slack community with live developer office hours if you’d prefer to connect in Slack.

Contribute to LifterLMS

Are you a developer interested in contributing to LifterLMS? Visit the LifterLMS GitHub Repository to find out how to support this fully open source WordPress LMS software.

Want to add a new language to LifterLMS? Swell! You can contribute language translations to the LMS at translate.wordpress.org.

The mission of LifterLMS is to democratize education in the digital classroom. Our vision is to lift up others through education. LifterLMS helps you ACCELERATE.

What Should You Do Next?

Install the free LifterLMS plugin on your website, then …

Try out all the premium add-ons for $1 by signing up >>HERE<<

🚀

Screenshots

  • Infinitely customizable course catalog layouts: shown with course title, featured image, and instructor information.
  • View a single course with customizable content including access plans, enrollment, difficulty, instructor, student course progress, and lesson syllabus.
  • View a single lesson with customizable content including student course progress, videos, images, slideshow, PDFs, and lesson syllabus.
  • Offer quizzes with many question types. Enable students to retake quizzes, get instant grading, and offer contextual feedback.
  • The powerful student dashboard serves as the primary place for learners to access their courses, memberships, orders, achievements, and more.
  • The notifications section of the frontend dashboard shows students a recap of activity, achievements, course progress, and more.
  • Celebrate student progress with custom achievements that can be automatically or manually awarded based on eLearning site interactions.
  • Edit courses in the WordPress block editor to add pricing tables, progress, outline, and more content.
  • Use the interactive Course Builder to structure your course, sections, lessons, quizzes, assignments and more.
  • Dashboard for course creators in the WordPress admin: an overview of recent statistics and quick links to common admin screens.
  • Advanced reporting for every learner so admins can track an individual students's course progress, membership, engagements, and achievements.
  • Clean and organized plugin settings to help you quickly and easily set up your course or membership site.
  • Detailed sales and enrollment reporting with built-in time periods or custom fields to filter by term, student, course, and membership.
  • Setup Wizard to help you install and configure your new online course website with LifterLMS in 5 simple steps.

Blocks

This plugin provides 1 block.

  • Certificate Title Displays the title of a certificate.

Installation

Minimum System Requirements

LifterLMS Requires

  • PHP 7.4 or later
  • WordPress 5.6 or later
  • MySQL 5.6 or later

Visit our full system requirements for additional information.

Automatic Installation

The simplest way to install LifterLMS is through your existing WordPress site’s admin. Let WordPress handle file transfers for you – you’ll never need to leave the web browser or admin panel.

  1. Log in to your WordPress dashboard
  2. Navigate to Plugins -> Add New
  3. In the search field, type “LifterLMS” and click “Search Plugins”
  4. Once you’ve located LifterLMS, click “Install Now”
  5. Once installation is complete, click “Activate”

Manual Installation

To manually install LifterLMS, you’ll need to download the zip file using the “Download” link on this screen. Then, use FTP to manually upload the unzipped plugin folder to the proper plugins directory on your webserver.

Please see this WordPress Codex document for full instructions on Manual Plugin Installation.

Setup Wizard

After installation, LifterLMS launches a friendly (and super quick) Setup Wizard.

This wizard helps you configure LifterLMS so you can get to the fun stuff – like creating your courses – as quickly as possible.

The wizard includes a few sample courses you can import if you want to see some examples before you start creating your own content.

You can return to the setup wizard at any time by following these steps.

FAQ

Where do I buy add-ons or bundles for my LifterLMS eLearning Website?

You can explore the individual learning management system add-ons here or save BIG with a bundle

How do I troubleshoot issues with my LMS website?

First, make sure that you’re running the latest version of LifterLMS. And if you’ve got any other LifterLMS plugins active on your site, make sure those are running the most current version as well.

The most common issues we see are either plugin conflicts, theme conflicts, or outdated servers. You can test if a plugin or theme is conflicting by manually deactivating other plugins until just LifterLMS is running on your site. If the issue persists from there, revert to the default Twenty Fifteen theme. If the issue is resolved after deactivating a specific plugin or your theme, you’ll know that is the source of the conflict. If it is a hosting issue, contact your web host and make sure they’re running the most current version of PHP.

Also be sure to check out the official LifterLMS Knowledge Base.

How do I ask a question about my online course website?

Users of the free LifterLMS should post their questions here in our WordPress.org support area. If you find you’re not getting support in as timely a fashion as you wish, you might want to consider purchasing a product from LifterLMS so you can access the LifterLMS support team.

If you’re already a LifterLMS customer, you can simply log into your account and contact the support team directly on the LifterLMS website. We can provide a deeper level of support in there and address your needs on a daily basis during the work week. Generally, except in times of increased support loads, we reply to all comments within 12 business hours.

LifterLMS is awesome! Can you set up my online course site for me?

LifterLMS offers technical support, but we do not offer custom website development services. However, we do recommend third party LifterLMS Experts who can help with web design, web development, instructional design or marketing for a fee. Click here to visit the LifterLMS Experts page.

I’m interested in purchasing add-ons for my WordPress LMS website, but I have a few questions first.

If you’re not finding your questions answered here or on our website, you can ask your presales questions through this contact form. You can also connect live with a member of our team here.

What add-ons are available for LifterLMS, and where can I read more about them?

You can find a full list of official LifterLMS Add-ons here

I have a feature idea. What’s the best way to tell you about it?

We care about your feature ideas and what you have to say. You can request a feature, vote on existing feature requests, and checkout the product roadmap.

Do you have any training for building an online course website?

Be sure you’ve taken the free tutorial training video course: How to Create an Online Course with LifterLMS. We also encourage you to get to know us by signing up for a $1 temporary 30 Day website on our servers which comes with the core LifterLMS plugin all our add-ons intalled. This demo allows you to test drive all the add-ons before you invest. Check it out here: Try LifterLMS for $1.

I’m interested in contributing to LifterLMS, how can I start?

LifterLMS is an open source project. We manage our team, developers, issues, and code on GitHub.

We welcome contributions of all kinds, anyone can contribute even if you don’t write code! Check out our Contributor’s Guidelines to get started.

I found a security vulnerability or issue, how can I report it to the team?

The LifterLMS team takes security issues and vulnerabilities very seriously. We appreciate your efforts to responsibly disclose your findings, and will make every effort to acknowledge your contributions.

Please contact team@lifterlms.com to report a security vulnerability.

You can review our full security policy at https://lifterlms.com/security-policy.

Reviews

mai 3, 2023
I'm really enjoying this plugin. It is easy to use the interface to build the course outline, and there are nice options for designing each lesson (for example, there's the flexibility of integrating a gallery or a PDF viewer into the lesson page. I found the student notifications a little difficult to set up, but that's because I did not watch the free course before I started, which I recommend anyone to do. It will save you time. It also works in other languages, like in my case; Hebrew, and they have great support. So yes, 5 stars!
aprĂ­l 27, 2023
The team's passion for the product really shined through in the presentation, and I couldn't help but feel energized and inspired by their dedication and expertise. After watching the demo videos and the Zoom call, I'm really excited to learn more about this product and how it can make a positive impact in my life.
aprĂ­l 24, 2023
We love it so much that we grab a license for life! Lifter LMS is everything you need to create your company training hub!
aprĂ­l 25, 2023
Outstanding software and support! This LMS has everything you need to start, grow, and scale. I have clients on this from 2-500 students. Many of which add their own lessons and courses, I rarely get calls for an issue or for something someone can't easily find on the Lifter website. Support is outstanding, and responsive, and they have the answers!
aprĂ­l 3, 2023
Truly great customer service...they stay with you until something is solved...always smiling
Read all 303 reviews

Contributors & Developers

“LifterLMS – WordPress LMS Plugin for Courses & eLearning” is open source software. The following people have contributed to this plugin.

Contributors

“LifterLMS – WordPress LMS Plugin for Courses & eLearning” has been translated into 23 locales. Thank you to the translators for their contributions.

Translate “LifterLMS – WordPress LMS Plugin for Courses & eLearning” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

v7.1.4 – 2023-04-28

Bug Fixes

  • Fixed an issue that prevented the correct saving of the course length when using the block editor. #2426

Developer Notes

  • Fixed an issue running unit tests on PHP 7.4 and WordPress 6.2 expecting render_block() returning a string while we were applying a filter that returned the boolean true.

v7.1.3 – 2023-04-25

Updates and Enhancements

  • Wrapped some elements in HTML for better styling.
  • In Course and Lesson settings, replaced outdated URLs to WordPress’ documentation about the list of sites you can embed from.
  • Updated few Italian province names. #2256
  • Avoid use of inline styles in course reviews. #410

Bug Fixes

  • Fixed “Unsaved Data” warning when adding vouchers. #2394
  • Fixed “Course Length” and “Difficulty” fields visible in the Block Editor which is meant for Classic Editor. #2174
  • Added missing $post_id parameter to the the_title filter hook when retrieving a form title. #2332
  • Added missing Armed Forces options to the US States dropdown in the Billing information form. #2325
  • Using strpos() instead of str_starts_with() for compatibility. #2415

Developer Notes

  • Added helper function llms_get_floats_rounding_precision() to return precision for rounding off floating values and filter hook lifterlms_floats_rounding_precision to filter precision value in reporting. #2237
  • Added lifterlms_dashboard_memberships_not_enrolled_text filter hook to allow altering the message displaying on the student dashboard when the current user is not enrolled in any memberships. #2396
  • Added lifterlms_dashboard_courses_not_enrolled_text filter hook to allow altering the message displaying on the student dashboard when the current user is not enrolled in any courses. #2396

Updated Templates

v7.1.2 – 2023-03-27

Updates and Enhancements

  • Making the LifterLMS logo link to the LifterLMS.com site.

Bug Fixes

  • Fix bug in llms_featured_img function when featured image file is not available. #2381
  • Fixed manual certificates awarding broken when using the block editor. #2386

v7.1.1 – 2023-03-13

Bug Fixes

  • Fixed notice display on WooCommerce dashboard pages.
  • Fixed View button URL when using WP in subdirectory.
  • Fixed blank System Report’s copy for Support.

v7.1.0 – 2023-03-02

New Features

  • Added lessons count column on the Courses post list table.
  • Added a new Dashboard page under the LifterLMS menu in the admin, whicih includes recent activity widgets and links to useful resources.
  • Added link to the course builder for each lesson on the Lessons post list table. Also added a link to either edit or add a quiz.

Updates and Enhancements

  • Updates LifterLMS Helper to v3.5.0.
  • Make the LifterLMS menu meta box initially available on Appearance -> Menus.
  • Updates LifterLMS REST to v1.0.0-beta.26.

Bug Fixes

  • Catch possible fatal when trying to display a “broken” basic notification and set its status to ‘error’ so that it’ll be excluded from the next fetches.
  • Catch possible fatal when sending notification emails and in that case remove from the queue the item that produced it.
  • Fix cloned course retaining original course’s ID in some restriction messages.
  • Fixed possible admin notices duplication when activating/deactivating or installing add-ons from the page Add-ons & more.
  • Avoided setting the llms-tracking cookie when there are no events to track.
  • Updated styles across the entire plugin.
  • Updated Add-ons & more list to hide old (uncategorized) products.

Deprecations

  • Deprecated methods LLMS_Admin_Notices_Core::sidebar_support() and LLMS_Admin_Notices_Core::clear_sidebar_notice().
  • Removed notice for theme sidebar support.

Developer Notes

  • The function llms_is_user_enrolled() will always return false for non existing users. While, before, it could return true if a now removed user was enrolled into a the given course or membership.
  • Added new LLMS_Course::get_lessons_count() method. It can be used in place of count( LLMS_Course::get_lessons() ) to improve performance.
  • Fixed compatibility with PHP 8.1 by using an empty string as menu parent page for the course builder submenu page in place of NULL.
  • Avoid passing null values to urlencode() and urldecode() that would produce PHP warnings on PHP 8.1+.
  • Added $autoload parameter to the function llms_get_student.

Performance Improvements

  • Improve performance when querying notifications via the LLMS_Notifications_Query and there’s no need to count the total notifications found, or for pagination information.
  • Immediately return false when running llms_is_user_enrolled() on logged out or no longer existing users, avoiding running additional DB queries e.g. when displaying course or membership catalogs for visitors.
  • Skip counting the total transactions found when retrieving the last or the first transaction for an order.

Updated Templates

  • templates/admin/reporting/nav-filters.php
  • templates/admin/reporting/reporting.php
  • templates/admin/reporting/tabs/courses/course.php
  • templates/admin/reporting/tabs/memberships/membership.php
  • templates/admin/reporting/tabs/quizzes/quiz.php
  • templates/admin/reporting/tabs/students/student.php
  • templates/admin/reporting/tabs/widgets.php
  • templates/checkout/form-confirm-payment.php

v7.0.1 – 2022-11-14

Bug Fixes

  • Fixed a fatal error encountered on the payment confirmation screen when attempting to confirm a non-existent order. #2093
  • Use sanitize_file_name() in favor of sanitize_title() for generating the file name of reporting table export files. #1540
  • Resolved conflict encountered on post edit screens when using LifterLMS, Yoast SEO, and the Classic Editor plugin. #2298

Developer Notes

  • A stub method, get_title() has been added to the LLMS_Abstract_Exportable_Admin_Table abstract class. This method should be defined by any extending classes and will throw a _doing_it_wrong() error when undefined.
  • Added new filter to allow customizing which user roles are affected by the LLMS_Admin_Menus::instructor_menu_hack function.

v7.0.0 – 2022-10-04

New Features

  • Added handling for admin settings options that store their option values in a nested array.
  • Added new AJAX checkout and payment source switching endpoints for payment gateways to utilize instead of the preexisting synchronous form submission methods.
  • On purchase completed retrieve the redirection URL from the INPUT_POST ‘redirect’ variable, if no ‘redirect’ variable is passed via INPUT_GET. The INPUT_POST ‘redirect’ variable comes from the new checkout form’s hidden field ‘redirect’ populated with LLMS_Access_Plan::get_redirection_url(). #2229

Updates and Enhancements

  • Full Site Editing: [BREAKING] The wrappers in the custom header and footer templates have been changed to the semantic HTML tags <header> and <footer> in favor of default <div> tags. #2281
  • When an order post is restored from the trash its post status will now be “llms-pending” in favor of the default “draft” status.

Bug Fixes

  • Fixed unclosed checkout div wrapper on empty cart. #2277
  • Don’t attempt to lookup the default payment gateway from user meta data.
  • Fixed required fields duplication when the form is a child of a .wp-block-column element. #2134
  • Fixed an issue that prevented disabling the access plan’s option, Override Membership Redirects, once enabled. #2234
  • Disabled scroll-behavior: smooth on checkout screen to address form element validity checking issues on Chromium-based browsers. #2206

Deprecations

  • Deprecated LLMS_Controller_Orders::switch_payment_source() in favor of LLMS_Controller_Checkout::switch_payment_source().
  • Deprecated the lifterlms_update_option_{$type} action in favor of the llms_update_option_{$type} filter.
  • Method LLMS_Controller_Orders::confirm_pending_order() is deprecated in favor of LLMS_Controller_Checkout::confirm_pending_order().
  • Method LLMS_Controller_Orders::create_pending_order() is deprecated in favor of LLMS_Controller_Checkout::create_pending_order().
  • Method LLMS_Controller_Orders::switch_payment_source() is deprecated in favor of LLMS_Controller_Checkout::switch_payment_source().
  • Passing jQuery selections into the window.LLMS.Spinner functions is deprecated. Use JS Elements or selection strings parseable by document.querySelector() instead.
  • Deprecated hook llms_{$method}_title in favor of llms_{$method}_refund_title.

Developer Notes

  • Added admin settings helper function, llms_get_dashicon_link(), intended to enable the addition of external resource helper links to settings field descriptions.
  • The LLMS_Student object can be instantiated as an empty object and bypass current user autoloading. In the future this may affect integrations using the lifterlms_new_pending_order action hook which will receive an “empty” student object during order setup by gateways utilizing new AJAX-powered checkout endpoints.
  • Added a filter, llms_gateway_{$this->id}_logging_enabled, which will allow force enabling/disabling of gateway logging functions.
  • Improved payment gateway secure string logging by adding a method, add_secure_string() allowing developers to add secure strings during runtime without the necessity of registering the strings using filters.
  • Introduces new function llms_is_option_secure() for determining if an “secured” option is defined in a “secure” manner.
  • Implemented new gateway feature: modify_recurring_payments. #2176
  • Added two new parameters to LLMS_Access_Plan::get_redirection_url() – $encode to optionally get a raw (not encoded) URL. – $querystring_only to optionally get only the redirect URL if set via NPUT_GET variable.
  • Added new parameter $querystring_only to the filter hook llms_plan_get_checkout_redirection.
  • Admin settings fields now display after_html for additional field types which support desc.
  • The CSS for .llms-spinning and .llms-spinner elements is no longer loaded as part of the lifterlms.css and admin.css files, instead it is loaded dynamically when window.LLMS.Spinner functions are called. In some cases CSS overrides to these elements which relied on CSS rule load order may no longer successfully override the default CSS rules. These overrides may need to be updated to have more specific selectors in order to ensure the overrides are retained.
  • The Javascript object, window.LLMS.Spinner, has been converted to a module accessible from the same variable.
  • The window.LLMS.Spinner methods now accept JS Elements and selector strings parseable by document.querySelector() in addition to jQuery selections.
  • Added new filter llms_transaction_can_be_refunded enabling custom refund restrictions to be applied to a transaction.

Updated Templates

v6.11.0 – 2022-09-22

Updates and Enhancements

  • Since version 6.0.0, the Certificate Title Block provided the option to use four Google-hosted fonts. These fonts will now be served from the site’s server in favor of serving them from the Google Fonts CDN. For more information about this change, please refer to https://make.wordpress.org/themes/2022/06/18/complying-with-gdpr-when-using-google-fonts/. If you wish to continue loading fonts from Google’s CDN, add the following code to your functions.php file: add_filter( 'llms_use_google_webfonts', '__return_true' );. #2189
  • Upgraded included library, @woocommerce/action-scheduler, to version 3.5.2.

Bug Fixes

  • Fixed a division by zero error encountered on quiz reporting screens for quizzes with 0 total available points. #2270

v6.10.2 – 2022-09-14

Updates and Enhancements

  • Updated woocommerce/action-scheduler to version 3.5.1.

Security Fixes

  • Fixed a data sanitization issue related to achievement permalinks.

v6.10.1 – 2022-09-07

Bug Fixes

  • Fixed a PHP warning raised when logging errors during email notification dispatch. #2250
  • Fixed issue preventing one-time orders for being included in membership revenue reporting widgets. #2254

Read the full changelog