LifterLMS News You Can Use #0010

Welcome to your monthly LifterLMS News You Can Use, November edition: #0010

Read About Recent Technical Product Updates (We’ve been busy)!

LifterLMS Version 3.36.2

Updates

  • Tested to WordPress 5.3.0-beta.2
  • Upgrade UI on student course reporting screens.
  • Added logic to physically remove from the membership level and remove enrollments data on related products, when deleting a membership enrollment.
  • Lesson metabox “start” drip method made available only if the parent course has a start date set.

Bugfixes

  • Fixed JS error when client-side event tracking settings aren’t loaded, thanks @wenchen!
  • Fixed PHP warning resulting from drip the “Course Start” lesson drip settings when no course start date exists.
  • Fixed fatal error encountered when reviewing an order placed with a payment gateway that’s been deactivated.
  • Files Updated
  • Templates Updated

LifterLMS Advanced Videos Version 1.0.0-beta.5

  • Fix bug causing video progress to be checked on lessons without videos or with videos that aren’t supported by an available provider.

LifterLMS Authorize.Net Version 1.0.5

  • Replace billing_phone with proper meta value phone when creating / updating a customer profile

LifterLMS Blocks Version 1.6.0

  • Feature: Added form field blocks for use on the Forms manager.
  • Feature: Add logic for logged_in and logged_out block visibility options.
  • Update: Added isDisabled property to Search component.
  • Update: Adjusted priority of render_block filter to 20.
  • Bug fix: Import InspectorControls from wp.blockEditor in favor of deprecated wp.editor
  • Bug fix: Automatically store course/membership instructor with post_author data when the post is created.
  • Bug fix: Pass style rules as camelCase

LifterLMS Custom Fields Version 1.0.0

Initial public release

LifterLMS Version 3.37.0-beta.1

Form Management Improvements

  • Forms (registration, checkout, account) are now managed via a block editor interface.
  • Customize field labels, description, and placeholders in a simple WYSIWYG interface.
  • Mark fields as required with a toggle.
  • Reorder fields with drag and drop.
  • Customize layout using block editor columns
  • Use LifterLMS block-level visibility to conditionally display fields based on enrollment or logged in status.

Form Localization

  • Added default country and state/region lists (see the “languages” directory).
  • Country and state forms are now searchable dropdowns that adjusted based on the currently selected country.
  • Each country’s locale information (such as what a “post code” is called and whether or not the country has states or post codes) will update automatically based on the selected country.
  • Enqueue select2 on account and checkout pages for searchable dropdowns for country & state.

Updates

  • New shortcode [user] which is used to output user information in a merge code interface.
  • Improved form field generation via LLMS_Form_Field class.
  • LifterLMS Settings: renamed “User Information Options” to “User Privacy Options”.
  • Reorganized open registration setting.
  • Use LLMS.wait_for() for dependency waiting.
  • Moved checkout template variable declarations to the checkout shortcode controller.
  • Removed field display settings in favor of form customization using the form editors.
  • Organized function files. Some functions have been moved.
  • Function llms_get_minimum_password_strength_name() now accepts a parameter to retrieve strength name by key.
  • Use LLMS.wait_for() for dependency waiting.

LifterLMS Blocks v1.6.0

  • Feature: Added form field blocks for use on the Forms manager.
  • Feature: Add logic for logged_in and logged_out block visibility options.
  • Update: Added isDisabled property to Search component.
  • Update: Adjusted priority of render_block filter to 20.
  • Bug fix: Import InspectorControls from wp.blockEditor in favor of deprecated wp.editor
  • Bug fix: Automatically store course/membership instructor with post_author data when the post is created.
  • Bug fix: Pass style rules as camelCase.
  • Removed unused Javascript assets
  • Remove unused bootstrap transiton and collapse scripts.
  • Remove topModal vendor dependency.
  • Remove password strength inline enqueues.

Bug fixes

  • Only attempt to add a nonce to the datastore when a nonce exists in the settings object.

Deprecations

  • Deprecated LLMS_Person_Handler::register() method, use llms_register_user() instead.
  • Deprecated llms_get_minimum_password_strength() with no replacement.

Template Updates

  • templates/checkout/form-checkout.php
  • templates/checkout/form-gateways.php
  • templates/global/form-registration.php

LifterLMS REST API Version 1.0.0-beta.8

  • Return links to those taxonomies which have an accessible rest route.
  • Initialize $prepared_item array before adding values to it. Thanks @pondermatic!
  • Fixed sales_page_type not returned as none if course’s sales_page_content_type property is empty.
  • Load webhook actions a little bit later, to avoid PHP warnings on first plugin activation.
  • Renamed sales_page_page_type and sales_page_page_url properties, respectively to sales_page_type and sales_page_url according to the specs.
  • Add missing quotes in enrollment/access default messages shortcodes.
  • Call set_bulk() llms post method passing true as second parameter, so to instruct it to return a WP_Error on failure.
  • Add missing quotes in enrollment/access default messages shortcodes.
  • sales_page_page_id and sales_page_url always returned in edit context.
  • Call set_bulk() llms post method passing true as second parameter, so to instruct it to return a WP_Error on failure.

LifterLMS Version 3.36.3

Updates

  • Added new LLMS_Membership class methods: get_categories(), get_tags() and toArrayAfter() methods. 

Compatibility

  • Fixed access plan description conflicts with the Classic Editor block. This also resolves compatibility issues with Elementor which uses a hidden TinyMCE instance.
  • Changed pre_get_posts callback from 10 (default) to 15. Fixes conflict with Divi (and possibly other themes) which prevented LifterLMS catalog settings from functioning properly.

Bugfixes

  • Added translation to error message encountered when non-members attempt to purchase a members-only access plan. Thanks @mrosati84!
  • Fix return of LLMS_Generator::set_generator().
  • Fixed a typo causing invalid imports from returning the expected error. Thanks @pondermatic!
  • Fixed issue preventing membership post type settings from saving properly due to incorrect sanitization filters.
  • Fixed issue where wp_list_pluck() would run on non arrays.

LifterLMS Rest API 1.0.0-beta.8

  • Return links to those taxonomies which have an accessible rest route.
  • Initialize $prepared_item array before adding values to it. Thanks @pondermatic!
  • Fixed sales_page_type not returned as none if course’s sales_page_content_type property is empty.
  • Load webhook actions a little bit later, to avoid PHP warnings on first plugin activation.
  • Renamed sales_page_page_type and sales_page_page_url properties, respectively to sales_page_type and sales_page_url according to the specs.
  • Add missing quotes in enrollment/access default messages shortcodes.
  • Call set_bulk() llms post method passing true as second parameter, so to instruct it to return a WP_Error on failure.
  • Add missing quotes in enrollment/access default messages shortcodes.
  • sales_page_page_id and sales_page_url always returned in edit context.
  • Call set_bulk() llms post method passing true as second parameter, so to instruct it to return a WP_Error on failure.

Grab Your Favorite Drink and Check Out these Podcasts 

Episode 246: Create More Income, Impact, and Influence for Your Online Courses and Personal Brand with Professional Self-Made YouTuber Sean Cannell

Learn how to create more income, impact, and influence for your online courses and personal brand with professional self-made YouTuber Sean Cannell in this episode of LMScast.

Episode 247: How to Coach with Tammy Gooler Loeb

In this LMScast Chris Badgett from LifterLMS dives into how to coach with Tammy Gooler Loeb. 

Episode 248: How to Choose the Right Course to Build or Membership Site Topic to Focus on with Ryan Levesque

Learn how to choose the right course to build or membership site topic to focus on with Ryan Levesque.

Episode 249: How to Unlock Beautiful Conversion Optimized Checkout for WooCommerce with Clif Griffin

Learn how to unlock beautiful conversion optimized checkout for WooCommerce with Clif Griffin in this episode of the LMScast podcast.

Episode 250: Marisa Murgatroyd Teaches How to Build a Mission Focused Experience Product Instead of a Low Engagement Information Product

We discuss building WordPress learning management system website accessibility with Susan Wheeler-Hall in this episode of the LMScast.

Episode 251: How Education Entrepreneurs Can Transcend a Crazy Busy Lifestyle with Executive Career and Mindset Coach Elizabeth Pearson

Learn how education entrepreneurs can transcend a crazy busy lifestyle with executive career and mindset coach Elizabeth Pearson in this episode of the LMScast.

Episode 252: WordPress Learning Management System Website Accessibility with Susan Wheeler-Hall

We discuss building WordPress learning management system website accessibility with Susan Wheeler-Hall in this episode of the LMScast.

Episode 253: Offline Marketing for Online Courses with High Ticket Ecommerce and Consulting Business Expert Sayan Sarkar

Learn about offline marketing for online courses with high ticket ecommerce and consulting business expert Sayan Sarkar in this episode of the LMScast.

Episode 254: What Virtual Assistants Can Do For Course Creators with Expert VA Trainer Kathy Goughenour

We dive into what virtual assistants can do for course creators with expert VA trainer Kathy Goughenour in this LMScast. 

Miss a LifterLMS Webinar? We’ve got Replays!

How To Grow Your Email List And Social Followings With Giveaways

Would you like to grow your email list and social following? In this webinar John Turner will be joining us to show proven techniques and tools they’ve used within AwesomeMotive to grow their audience that can help you grow yours.

Contributing to LifterLMS: A Guide to Open Source Projects for New Contributors

LifterLMS technical co-founder and lead developer Thomas Patrick Levy on why and how to contribute to open source projects.

Community Wins!

“Coming up to my 1 year anniversary with LifterLMS.  Had 3 online courses purchased this morning. That brings my sales record to $4000+ since my online launch on 12/1/18.  And, this is only something I do as a sideline to my in-person trainings and my college classroom. Surprised LifterLMS have opened a whole new world of pedagogy to me. I love it!”

Other News You Can Use

Check out this customer review of LifterLMS

 20 Social Media Ideas to Increase Curiosity about Your Online Course 

You may be interested in this case study on LifterLMS expert WP Tonic transitioning a client from Kajabi to LifterLMS and customizing the platform to meet the client’s requirements

Here’s What We’d Like You To Do Next…

What would topic you like to see featured next on a LifterLMS Webinar?  Fill out our Contact Form with your ideas!

See you next month!