Uncanny LearnDash Codes 3.0

Following up on our recent Uncanny LearnDash Toolkit, Pro and Continuing Education Credits 3.0 releases, today we’re excited to announce the 3.0 version of our popular Codes plugin for LearnDash!

The Uncanny LearnDash Enrollment Codes plugin makes it easy to add learners to LearnDash courses and groups using codes you can generate on your website. It’s often used to sell access to LearnDash courses and groups from another website (such as from Shopify), completely offline (a popular use is bundling codes in book sales or posting codes at trade shows), or even shared in newsletters. It opens up a world of opportunities for getting people onto your WordPress site and into LearnDash courses.

In the 3.0 release we’re adding some frequently requested features that make it even easier to manage large sets of codes. A recent client project that required generating and managing over one million codes inspired us to add powerful code search capabilities and a way to expire coupon codes by date and time—automatically.

As with all of our 3.0 releases, the new Codes update also includes some Gutenberg blocks as well as the new Uncanny 3.0 architecture. This includes easier access to support resources and our help desk.

For those of you struggling with the move to Theme My Login 7.x, we have added support for TML 7.x and you can now extend its registration forms to support code redemption. Gravity Forms users get support for User Verification, and both translation support and multisite compatibility are improved.

If you’re not yet using Uncanny LearnDash Enrollment Codes, now is the perfect time to check out what is by far the most powerful code-based solution for managing access to LearnDash courses and groups.

Continuing Education Credits 3.0

As part of our series of 3.0 releases for our LearnDash plugins, today marks the release of the 3.0 update for Uncanny Continuing Education Credits. While Pro, Tin Canny and Groups tend to get all the attention, the Continuing Education Credits plugin is one that has been invaluable for some of our own projects, especially for the permanent record it creates of LearnDash course completions. With the latest changes, we’re confident it will be an even bigger asset to sites offering continuing education credits and compliance training.

Here’s some of what’s changing in the 3.0 release:

  1. New Report Designs: We’ve completely redesigned both admin and front end reports so that everything is modern, responsive, and more intuitive.
  2. New Report Filters: Filter admin reports by date range, user or group. It’s even easier to get to the specific data you need.
  3. Gutenberg Block Support: We’re adding eight new Gutenberg blocks for shortcodes and reports to make it easier to incorporate credit reporting into the front end of your LearnDash site.
  4. Uncanny 3.0 Plugin Architecture: Now it’s even easier to get support right from your WordPress site and the control panel is aligned with our other plugins.

Uncanny Continuing Education Credits 3.0

The 3.0 release also includes a number of fixes and support for the new CEU column available in the Learner Transcript in the 3.0.1 Pro release. All things considered, it’s a big update to the CEU plugin and brings important efficiency and aesthetic improvements.

If you’ve considered Uncanny Continuing Education Credits in the past but weren’t sure how it might add value to your site, make sure to check out our recent post on building compliance and recurring training programs that leverage some of the key features in this plugin.

Annual Compliance Programs with WordPress

It seems like a simple scenario: Staff need to complete the same courses every year and those completions need to be tracked. Yet, if you deliver your elearning programs with WordPress, you probably know how difficult this is to achieve. Here’s where things with a WordPress-based LMS start to break down:

  1. WordPress LMS plugins don’t track historical completions. Once a learner completes the course once, that’s it. They can’t trigger a second completion.
  2. If you reset course progress, it resets everything. That’s probably why plugins make it difficult or impossible to reset progress.

With the help of some addon plugins, however, it is absolutely possible to use WordPress as a platform to deliver annual compliance training. This article outlines how you can do it with the popular LearnDash LMS plugin for WordPress.

Create a Permanent Record of Course Completions

This is really the most important step. If you can’t track historical completions, you can’t offer annual compliance programs. Fortunately, one of our commercial LearnDash plugins makes this easy.

The Uncanny Continuing Education Credits plugin automatically creates a permanent record of completions as users finish courses. Don’t let the name fool you; the plugin does far more than award credits for completing courses. And, for our scenario here, we don’t even need to consider the credit or certificate features included with the plugin. We just need to use it for the permanent record, so ignore the CEU and Total columns.

Historical Course Completions

The records in the table above are not pulling data from LearnDash, but rather the permanent course archive that the plugin captures automatically. As soon as the plugin is installed it records all new completions to the permanent record, so you never need to worry about progress resets or LearnDash changes affecting historical records.

Reset Course Progress

Now that you’re storing a permanent record of course completions, you need a way to reset user progress in courses so that they can retake them. After all, you don’t want to have to clone out a course each year and re-enroll students in the new one just so they can complete it again.

One very simple option here is to use the Uncanny LearnDash Toolkit Pro plugin, with its Reset Button module, to allow users to reset their own progress and take the course again. Once it’s turned on, just drop the [uo_reset_course_progress] shortcode onto any course page where users need to reset progress. The button that it adds will allow users to retake the course and wipe out their previous progress (which is why it’s so important to have the historical record in place).

Another option here is our Uncanny Automator plugin. With it, you can create “triggers” that reset progress for a course. An easy Automator recipe here would be to set up a recipe that resets a user progress in a course as soon as they complete it. This is what the recipe might look like:

Reset Course Progress on Completion

If you’re a developer, you can even build your own workflows for resetting progress that better match your context. The Reset Button module mentioned above as part of Pro includes some tools that make it possible to incorporate our reset functions into your own code. More information is available in the Knowledge Base article.

Other Options for Compliance Tracking

The solutions above require the use of 2 to 3 paid plugins, but there are possible workarounds that can be used with a bit more work. If you use a CRM and a tool like WP Fusion, you could potentially use Tags to track completion records instead of our Continuing Education Unit plugin. On an annual basis, what you could do is change completion tags in your courses so that it identified the course and year. In other words, maybe on completion of a course called “Physics” you set a tag of “Completed Physics – 2019”. You could then filter on the CRM side to show only users with that tag to see who was assigned that tag. You will still of course need some way to reset course progress, and for that options are more limited.

By adding plugins to your LearnDash site like the ones mentioned above, it is very possible to offer annual compliance programs on your site that keep historical records and do allow users to retake the courses every year.

If you have your own solution for offering annual compliance training that’s different than what’s outlined above, let us know your solution in the comments!

The Biggest Toolkit Pro Update Yet

Following up on our recent Uncanny LearnDash Toolkit 3.0 release, the 3.0 Toolkit Pro release is now also available! It’s a huge release that includes 2 brand new modules, several redesigns, new Gutenberg blocks and a whole lot more. Between the free Toolkit and the Pro modules addon, we now offer a whopping 37 powerful modules to improve your LearnDash sites.

New Modules

The Uncanny LearnDash Toolkit Pro 3.0 release includes 2 new modules: Autocomplete Lessons & Topics When Quiz Is Graded and Group Login Redirect. We know, the names are long, but at least they describe and do what you expect!

The new Autocomplete module fills a gap for quizzes that are graded manually. With this new module turned on, lessons and topics associated with a manually graded quiz are completed automatically for the user when the instructor grades the quiz. It’s simple, but it makes things easier for students.

The Group Login Redirect adds a new section to LearnDash Group Edit pages that, when populated, redirects members of that group to any page you choose on login. Maybe you want to take members of a group with only one course straight into that course, or maybe you want to take group members to a branded dashboard page just for that school or company. It’s a great option if you offer training to organizations. You can even set a redirect priority, so that if a user is in multiple groups, you can make sure you they land on the right page when they sign in.

While it’s not a new module, our Learner Transcript module got a big overhaul, so it’s almost like new! It has a completely new, mobile-friendly design, better printing support, branded header and footer options, and you can sort data and include or exclude columns. This one is really exciting for us and we’re sure your students will love this improved way to see their progress across courses.

That’s Just the Start…

The LearnDash Toolkit Pro 3.0 release includes dozens of enhancements and fixes. Here are a few highlights

  • Gutenberg block support for many of the modules with shortcodes
  • Submit a ticket right from your WordPress site, including optional site information to help us troubleshoot your issue
  • Filter courses by Category or Course Category when using our Course Dashboard shortcode
  • A new license activation page to make it easier to track licensing status
  • New debug options for the Simple Course Timer
  • No more requirement to pass a course ID to the reset button shortcode when it’s on a course page
  • Support for quiz and quiz question duplication in LearnDash 2.6

Read the full list of changes here: https://www.uncannyowl.com/knowledge-base/learndash-toolkit-pro-change-log/

Stay tuned for more 3.0 releases of our plugins over the next few weeks!

Announcing the Uncanny LearnDash Toolkit Version 3.0!

We just released version 3 of our super-popular Uncanny LearnDash Toolkit plugin and it has some really fantastic improvements!

Our Front End Login module, which is the first thing learners see on many LearnDash sites, has been completely overhauled with new features and an updated design:

We've added support for the popular reCAPTCHA anti-bot service. Many more strings are now easily customizable through the module settings. The original design is selected by default, for backward compatibility with existing sites, so to use the new design you'll need to choose the new template from the module settings. If you are a developer and had overridden the previous template file, you'll need to update your template file with the new version as it includes many internal changes.

Toolkit version 3 brings a completely overhauled Modules page with a more modern, streamlined design and improved mobile support:

We've also added a help page with links to relevant knowledge base articles right inside the plugin.

And what would a new release be without improved support for the Gutenberg WordPress editor? Modules with front-end components (Breadcrumbs, Resume button and Front End Login) get new Gutenberg blocks to make it easier to add these elements to your Gutenberg pages.

Lastly, we've included a number of bug fixes and minor enhancements to other modules. Check the changelog for the full list.

We put a lot of effort into version 3 of the Toolkit and we hope you enjoy it!

Existing User of the LearnDash Toolkit?

Before you jump in and update your Toolkit plugins on a live site, we highly recommend giving them a try in a Staging environment first. Some of the changes are quite significant, especially the Front End Login module, and testing that everything still works as expected is important.

Here's a quick video that we recommend existing users watch before applying the update to your sites:

Tin Canny Meets Gutenberg

Happy WordPress 5.0 Release Day!

Are you ready for Gutenberg? Or, more importantly, are your plugins?

If you use Uncanny Owl plugins on your LearnDash site, you might be ready. Users of the Pro modules of the Uncanny LearnDash Toolkit, Groups, Continuing Education Credits and Codes plugins are all set with the latest versions available from our site without needing to update. But if you use Tin Canny, make sure to update to version 2.9.9 or higher to use the Tin Canny uploader! Without it, you will not be able to upload your SCORM and xAPI modules to your LearnDash courses.

Tin Canny 2.9.9 isn’t just about Gutenberg though. It’s a big release and the last update before the 3.0 release later this month, so we wanted to talk through some of the changes and what they mean for your site.

Most important is, of course, the Gutenberg uploader for Tin Canny. It’s completely different than what you’re used to seeing for Tin Canny.

Tin Canny Blocks

Uploading modules is now done in Gutenberg using the “Tin Canny Content” block. By clicking that, you can choose to Upload a new module or Select from Library any existing content.

All of the controls you’re used to for your modules are now displayed in the block settings on the right, including the settings you’re used to, like insertion type and dimensions.

Gutenberg Tin Canny Uploader

And that’s it! Making the transition to managing your SCORM and xAPI with Gutenberg might seem strange the first time you do it, but it really is a simple transition once you’ve added 1 or 2 modules.

Outside of the Gutenberg-specific additions, we created a new page to find and manage your uploaded modules. The Manage Content page makes it easy to search through your uploaded Rise, Storyline, Captivate and iSpring modules, as well as preview them and delete them. No more having to dig through the Uploader tab in a post to look through and delete your modules (and we know many people didn’t even know that function existed).


There’s a lot more that’s new in the 2.9.9 release; here are some highlights:

  • An easy option to clear Answered and Experienced xAPI records from your database, freeing up space taken by these often less important verbs. (More data management records are coming in 3.0, including resetting Tin Canny data for individual users.)
  • Better support for the H5P Course Presentation content type.
  • Improved time zone support for the quiz reports.

The next big release will be 3.0, so stay tuned for more news on that in the near future!

Easier LearnDash Group Management

Our LearnDash Groups 2.6 release is big. It adds features that make it easier for Group Leaders to add and communicate with group members. That’s right, we added email functions! And there’s new front end group creation, more Theme My Login support, changes to filters… Let’s take a closer look.

Add & Invite Users

Because inviting individual users, uploading users by CSV and enrollment keys weren’t enough for Group Leaders to add users to groups, we listened to your requests and added a new interface to add users in bulk. Rather than having to add one user at a time, now Group Leaders can add multiple users from a single page. For large groups, this addition could save a lot of time.

Email Group Members

For a lot of sites this will be a big improvement. Uncanny LearnDash Groups 2.6 adds a new feature that allows Group Leaders to email their students right from the Group Management page. To use it, there’s a new optional attribute for the [uo_groups] shortcode of “group_email_button”. You need to turn this one on (so Group Leaders can’t suddenly send emails without you knowing about it), so make sure your shortcode looks like this to use the new button: [uo_groups group_email_button=”show”] (plus any other attributes you want to use). Please note that emails sent with this new functionality are sent on behalf of Group Leaders (so the reply-to address will be theirs) and that emails go to all members of the group.

Front End Group Creation

We’ve been reluctant to add this one, but by popular request it is now possible for users to create their own groups in the front end of LearnDash sites. Adding [uo_groups_create_group] as a shortcode to any page adds our Group Creation wizard to the front end, and the group creation form can be used by any user with the Group Leader or Administrator role. Be very cautious about using this shortcode and make sure the page is properly protected, whether it’s by membership plugin or other control, because in most cases you likely won’t want anyone to be able to create groups and add group leaders. It’s a very powerful feature, and we know it will be of use to many sites, but be very careful about access to it.

And There’s More…

Theme My Login 7.x support has been added for registration forms. The shift to version 7 of this plugin has been difficult and we’ve largely stopped using it ourselves, but enough Groups users have it to make this update necessary.

Drop-down lists in the course and quiz reports have been modified so that if there’s a single entry, that entry will be selected by default. That will save Group Leaders time and improve their user experience. The drop-down lists are now formatted to appear inline, rather than stacked, to save valuable page real estate. If you’ve applied custom CSS styling to these, you’ll want to check to ensure they still look good after you update.

Developers will appreciate some behind-the-scenes changes for easier modification of the plugin and support for custom roles in our permissioning model. Bulk discounts have improved tax support when tax is included in the product price, and a number of other fixes are included to improve general reliability and usability of the plugin.

All set to start using Uncanny LearnDash Groups 2.6? Make sure your license is up to date and then run the update on your site!

What’s New in LearnDash Toolkit Pro 2.5?

Yesterday’s release of the Uncanny LearnDash Toolkit Pro 2.5 update included a few very highly requested features, so we wanted to highlight exactly what’s now available in a blog post.

LearnDash Reset ButtonFirst up, there’s a brand new module: LearnDash Reset Button. We kept this one simple, but it’s powerful. When triggered, it allows users (or the system) to completely reset a user’s progress in a course. An example of this might be when a user has already completed a course but must retake it. In those situations the user may want to reset their progress first so they can start again, and this button is a great way to do that. Want to make sure users only see the button after they’ve completed a course? Wrap it in the shortcode! This module also includes a PHP function to reset course progress, handy for developers that perhaps want to reset progress when users repurchase a product. Learn more about this new module over in our Knowledge Base.

We also have big changes for our Enhanced Course Grid module, one of our most popular modules in Pro.  Users have long requested that there be a way to resume courses. The most recent release of our free LearnDash Toolkit, version 2.5, includes a course-specific Resume button shortcode that outputs a button that takes users back to where they left off in a specific course.  To make that button super easy for users to access, we’ve added a new attribute (resume_course_button=”show”) to the Enhanced Course Grid that displays a course-specific Resume button beneath the course when resume data is available. We’ve also added a second attribute (start_course_button=”show”) that displays a Start button for users that haven’t yet begun courses.  Two big notes for this one: You must have the Resume toolkit module enabled to use the new resume attribute, and if no resume data exists for the user for that course then no button will be displayed. This means that if you turn this on, an existing user with 50% progress in a course wouldn’t see any button because resume data at the course level only gets tracked after you install the Pro 2.5 update. Confused? Check out the Knowledge Base article for more info. Also note that you must update to version 2.5 of the Uncanny LearnDash Toolkit as well to use these new resume features.

To go along with this new resume functionality is a new shortcode included in the free Toolkit plugin. With the resume module in 2.5 we’re adding this new shortcode: [uo_course_resume course_id=”x”]. You can add that shortcode to any page (including course pages!) and it will allow users to return to the lesson, topic or quiz they last visited. It’s just like our regular resume button, except instead of being global this one applies to specific courses. The Knowledge Base article covers how to use it.

And one more big change: you can add category drop-downs to the Enhanced Course Grid! Use the categoryselector=”show” attribute to filter by WordPress category and course_categoryselector=”show” to filer by LearnDash course category. Make sure you use the right one! WordPress vs. LearnDash course categories are a frequent source of confusion for course grid users. The new attributes are included in the Knowledge Base article for the Enhanced Course Grid.

The 2.5 update includes a a few other changes, like the Import LearnDash Users module now supporting Display Name and better Gravity Forms detection.


New Front End Quiz Reports

One of our Tin Canny customers came to us with a great question: How can my instructors and students easily track performance across both LearnDash AND xAPI/SCORM modules? Tin Canny does a pretty good job with LearnDash results, but xAPI results are harder to analyze and none of our existing reports combine all scores together (LearnDash and xAPI). So, to help that client out, we created some new reports—and those new reports are now available in version 2.9.5 and higher of Tin Canny.

The first new report is a front end Group Leader quiz report. Administrators and Group Leaders can use the report to view LearnDash quiz and all scores tracked by Tin Canny (so H5P, iSpring, Adobe Captivate, Articulate Storyline and Rise) by group and by course. That means no digging into the Tin Can report in the back end and reconciling it with LearnDash quiz scores to get consolidated results. It’s all in a single report. Better yet, if quiz statistics were turned on for LearnDash quizzes, the new report also links to detailed quiz results, including a user’s answers and quiz times. (No such reports are available for Tin Canny scores, unfortunately, as those are LearnDash-only reports.)

Tin Canny Group Quiz Report

Tin Canny users with version 2.9.5 or higher installed can add the new report to a page by using this shortcode:


The second new report, also for the front end, outputs all scores for a particular user. Available to students themselves, Group Leaders and administrators, this one lists all LearnDash and scores tracked by Tin Canny across all courses.

Here’s the shortcode for the user quiz report:


Tin Canny User Quiz Report

The best part of the two reports is that they can be linked together for admins and Group Leaders using a shortcode attribute.

Here’s how to use it:

[uo_group_quiz_report user_report_url="%URL%"]

Just replace the URL in the example above with the URL that shows the new user report. And by doing that, all user names in the Group report will be linked to the user report with that person’s results. These 2 reports together make for a very powerful drill-down reporting solution for quiz scores, especially when paired with the CSV and PDF export options.

Please note that these 2 new reports are included in the Tin Canny LearnDash Reporting plugin only. It can be used without SCORM/Tin Can data as a LearnDash-only quiz reporting solution, but it is still only included in the Tin Canny plugin.

Build Better Group Leader Front End Experiences

It’s really satisfying to see our LearnDash plugins grow and mature. Uncanny LearnDash Groups is still (at the time this article was published) our newest plug public plugin, and with the recent 2.x changes, we have reached a point where development is quite stable. It’s great to see how happy people are with the product too; in the last week alone, customers wrote to tell us that the Groups plugin is “absolutely awesome” (Jonathan B) and a “very useful addition [that I] strongly recommend” (Julia R).

As it is a very complex plugin, however, we know that some users still find it challenging to create great user experiences around it on their sites. Recently we have particularly seen an uptick from customers asking how to make things easier for Group Leaders, especially how they should manage groups both post-purchase and on an ongoing basis. How should I get new Group Leaders to the Group Management page? How do I separate Student and Group Leader experiences? How do I teach Group Leaders what they should be doing? These questions and others do pose a challenge for some of our plugin users, especially because designing the right workflows aren’t necessarily part of the plugin itself.

In this blog post we outline some of the recommendations we often suggest to people, along with some simple code samples that might improve your workflows. Not all of these suggestions are likely to be relevant to your site, but maybe within the suggestions you’ll find some ideas about how the Uncanny LearnDash Groups plugin, along with some complementary solutions, can improve the Group Leader experience on your sites.

Restrict Menus by Role

Group Management RestrictionThis is really a key starting point. With our Groups plugin there are some pages only intended for Group Leaders, and it’s important not to expose them to regular students and other roles. For setting this up we like the Nav Menu Roles plugin, which allows you to set up your menu entries so that you can control what people see based on their role. Set up an entry for the Group Management page that only Group Leaders can see; this will help a lot. (If you use that plugin, make sure you disable the Menu Item Visibility module in the Uncanny LearnDash Toolkit if you use it; they will conflict otherwise.)

Use Redirects

Login redirects are great to get Group Leaders straight to the Group Management page. To make sure other login redirects are overridden and that you target Group Leaders only, we like Peter’s Login Redirect. Set a Group Leader role redirect to your Group Management page and you’re all set.

But what about post-purchase? WooCommerce signs the user in automatically after a purchase but takes them to a confirmation page. If you want to take the new Group Leader (as this applies to purchases of group products only) straight to the Group Management page, add this line of code to the functions.php file of your child theme:

add_filter( ‘uo_redirect_after_checkout’, ‘__return_true’ );

Add a Link to the Group Management Page

An underused shortcode included in our plugin takes users directly to the Group Management page:

[uo_groups_url text="Button Text"]

Just drop that shortcode onto a page (we like Learner Dashboards, or wherever users are most likely to spend most of their time), and it will display a link to the Group Management page. The link is only shown to Group Leaders, so you don’t have to worry about restricting who can see the link!

Send Instructions

It’s very helpful to send instructions to your new Group Leaders to help them get started after a purchase. This can be pretty hard though, since you don’t want instructions going to regular students too after buying a course product. Our preferred solution here is to use an integration with a CRM system, as we often have something set up anyway to pass details over and send automated email campaigns. If you do use one, and you turn on the “Automatically include Group Course products in Group License purchases” setting the the Uncanny LearnDash Groups settings page, you can add tags to your Course Products to trigger emails to anyone that buys them. Since that would normally be Group Leaders only, setting up an automation to trigger welcome instructions on those tags is a great way to send communications.

A plugin WooCommerce Follow Ups, could also be used and is simpler, but we prefer the CRM approach if you can do it.

Add Instructions to the Group Management Page

Getting Group Leaders to the Group Management page is easy with some of the instructions above, so if they’re going there anyway, consider adding some instructions to the top of the page.

Get Help From a Developer

There are some other code-based options available, but to execute them properly you’ll need a pretty good Developer. You could potentially modify the WooCommerce receipt email to include instructions based on the products purchased, or modify the confirmation/thank you page to include messaging and buttons based on what the user purchased. Both of these approaches require coding and can be complex to manage.

Whatever options you choose, we hope the guidance above does give you some ideas about how to set up your own workflow for Group Leaders as they manage their groups in the front end. And if you have any ideas that we may have missed, let us know about them in the comments below!