xAPI Quiz Reporting: Beta

Today’s release of Tin Canny LearnDash Reporting added some extremely significant new features for anyone working with xAPI modules inside LearnDash. Because they are big changes and have not yet been tested extensively on live sites, for now we’re considering them “beta” additions and we recommend caution when trying them out.

Track xAPI Quiz Scores

The biggest change is that we now support collecting quiz data from xAPI records. For our current Tin Canny users, you know that in previous releases we collected scores and verbs from xAPI and SCORM records only. There were several reasons for this, but an important one was that earlier Tin Canny releases were not as efficient with very large sets of data and in early development we decided to capture and report on the most important data only so that we kept database records down and performance up. We estimate that around 10% of Tin Canny users requested that we add quiz data as well though, so now, in beta form, we’re making that option available.

Here’s what we came up with as a starting point:

This is going to be hugely beneficial to sites that offer quiz questions inside uploaded modules, because it now makes it possible to see specific questions in a quiz, the user’s answer, the choices available, the correct answer, and whether or not the user was right. Want to know who answered a specific question incorrectly? Now you can do that. Maybe you want to know how many users answered “C” for a specific multiple choice question? That’s also possible now. It’s a very big improvement, especially used in combination with the filters for LearnDash course, module, question, result and date.

And yes, we know that some of the columns are far too narrow for some quiz questions on sites. That’s why we made it possible to add and remove columns from the table using the Screen Options function at the top of the page. This one is really powerful and we haven’t seen anything like it from other xAPI tools.

Sorry SCORM users, the beta report for quiz data supports xAPI only, but we’re looking at SCORM support for an upcoming release.

Replace Content (beta), Site Check and More

Besides the lack of quiz data, the inability to easily swap out uploaded modules was a relatively common request from Tin Canny users. In previous versions, replacing a module meant deleting the old module, then uploading a new one and fixing all of the shortcodes if the module was embedded in multiple places.  Now on the Manage Content page there’s a “Replace” link available for each module, which takes the new upload file, adds it, and replaces it in lessons and topics that used the old module automatically. If also deletes the old module and all related files. This feature should make a lot of users very happy.  Please note that this feature is in beta, and requires the deletion of at least some of the stored progress data for users, so be sure to check the knowledge base article before using it on your site.

Next up, Site Check. We were getting too many of the same support requests over and over related to common environmental issues. Mark Complete button not updating? Something is probably blocking the endpoint, like a .htaccess password or security plugin. Content not showing up? Possibly an http vs. https mismatch. Nothing working? Maybe the permalinks are invalid. For some of these common issues, Tin Canny now offers a Site Check tool to rule out the most common problems, and if any are found, it suggests why they might be happening and how to fix them.

Tin Canny Site Check

The 3.2 release also adds far more filters for developers, total course and learner stats to front end reports, and it takes care of a few additional translation issues (notably if you try to rebrand “Tin Canny”).

Most importantly: This update fixes an issue related to LearnDash 3.0 theme changes. If you use LearnDash 3.0 and controls over the Mark Complete button, you must use Tin Canny or higher or the Mark Complete restrictions won’t work. LearnDash changed how the Mark Complete button is identified and the only solution is to update to the latest version.

That’s it for now. We hope you like the changes!

Pro Updates: Faster Learndash and a New Dashboard

Every time we make a blog post about one of our plugin updates it’s because it’s a huge update with new features, and for today’s Uncanny Learndash Toolkit Pro 3.2 update that’s especially true. This one has been in development for quite some time, and the new features are going to make a huge difference to LearnDash sites, especially ones with a lot of content.

Faster LearnDash Lesson & Topic Performance

We’re most excited about adding a new Lazy Loading Course Navigation tool. We get inquiries all the time about how to improve LearnDash site performance at the enterprise level. This includes sites with potentially hundreds of courses and thousands of LearnDash lessons and topics. On those sites, things can really get slowed down just because of the volume of content; queries get really heavy just to check course content relationships and progress within courses. On larger sites, we’ve seen these queries add seconds (yes, plural) to every page load that students make inside a course. You can’t really take away navigation aids from inside courses—but you can now load them after the rest of the page loads.

That’s what our new [uo-course-navigation] shortcode does. Use it in place of the normal LearnDash Course Navigation widget and all of the extra LearnDash queries will run AFTER the rest of the page has loaded. On a big site we tested on, this approach made lessons and topics load about 25% faster for students. (It adds a brief loading animation to the navigation tool and users don’t see the course hierarchy right away, but on large sites the tradeoff is absolutely worth it.)

New Dashboard Design

New LearnDash Dashboard Design

Our LearnDash Course Dashboard shortcode was due for a redesign, especially after seeing some of what’s coming in LearnDash 3.0. So that’s exactly what we did, and in a big way. While not shown in the screenshot above, it’s now really easy for users to know how to start a course, resume a course and retrieve certificates. The colour palette is very customizable, and the new dashboard is amazingly responsive. We’ll get a demo up on our plugin demo site at https://learndash.uncannyowl.com/ soon, but we can assure you that it collapses very well and looks great on mobile devices.

For users of the current dashboard, don’t worry, there’s a toggle to continue using the Legacy design. Everyone else will almost certainly want to try out the “3.0” design though.

LearnDash Certificate PreviewCertificate Preview

If you’ve created many certificates with LearnDash you know how awkward and time-consuming it can be to set up certificates exactly as you want them. It typically involves setting up a test course, test lesson and/or quiz, then triggering completion and continuing reloading PDF files to try to get things right. You have one window open in the front end, the other in the back end, and you go back and forth to get things right.

Not any more. With the Certificate Preview module turned on, a Preview button gets added to the course edit page. And by clicking that button, right where you edit the certificate, you can preview the certificate. No more test courses and quizzes. Generating certificates is now far easier when you can do everything right inside the certificate edit page.

Note that because there is no associated course or quiz, our preview can’t actually render the shortcodes for things like completion date or course name. Instead, our preview tool substitutes placeholder data in the place of LearnDash shortcodes, so you can still focus on getting the layout right without having everything set up yet.

There’s More!

The Pro 3.2 release is big. We added some other great functions that will help a lot of our customers on their sites.

The Enhanced Lesson/Topic Grid module now supports WordPress category and tag attributes, so it’s easy to generate topic and grid listings with different content depending on the context.

Email Course Certificates adds %Group Name% token support to subject lines to make it easier for notifications to distinguish between users in different groups.

We also included a few fixes, notably for users that might have had issues with Drip Lessons by Group or automatically advancing on Gravity Form submission when the Autocomplete Lessons & Topics on Gravity Forms Submission module was enabled.

If you’re not yet an Uncanny LearnDash Toolkit Pro user, there’s never been a better time to buy; the Toolkit is now up to 39 total modules!

Introducing Automatic Template Overrides

We’re in the middle of another big round of plugin updates and perhaps one of the most exciting addition to our plugins is support for template overrides. Basically, this feature allows you to take key HTML elements from our plugins, copy the templates into your child theme, make modifications to them, and not be worried about your customizations disappearing when you update the plugins.

Last week’s Uncanny LearnDash Toolkit Pro (3.1) and LearnDash Groups (3.0.4) and this week’s Uncanny LearnDash Toolkit (3.1) updates are the first to support this new behavior. Using the overrides is really easy; find something you want to override in the /src/templates folders of our plugins, copy that file to your child theme (into an /uncanny-toolkit/ folder for the Toolkit plugins, /uncanny-groups/ for the Groups plugin), and then apply your changes to the new file.  If the file is in a subfolder of the /src/templates folder, replicate the same folder structure inside the override folder (e.g. /src/templates/frontend-login/default-login.php would go in /your-child-theme/uncanny-toolkit/templates/frontend-login/default-login.php).

Certainly this feature is intended primarily for developers, who can build some very powerful features using our plugins as a base. Perhaps you want to add a new field to our Enhanced Course Grid, like an instructor name, or maybe on the Import LearnDash Users page you want to add your own instructions and branding. Template overrides make things like this much easier.

And while we’re talking about Pro and Groups plugins anyway, here are some other recent updates to the plugins you may have missed…

Recent Uncanny LearnDash Toolkit Pro Updates

Improved Group Leader Interface: No more relying on third party plugins to redirect your Group Leaders! This module now supports login redirects for Group Leaders. If you use Pro with our Groups plugin, this is a great way to get your Group Leaders to land directly on the Group Management page.

Improved Group Leader Redirect

Email Quiz Certificates: Tokens now available for including the user’s first and last name in the email sent to admins and/or Group Leaders. Use %First Name% to include the user’s first name and %Last Name% for last name. This makes organizing emails much easier.

Email Course Certificates: Pro 3.0.4 added a way to send certificates with a timed delay. Most users should not choose the “Use Cron to send certificate option”, but in some cases where a shortcode does not have course completion when the certificate is sent, choosing this option and then having the certificate sent 20 seconds after completion allows time for shortcodes in the certificate to render properly. If you find your certificate PDF files have some blank values, try turning this on.

Recent Uncanny LearnDash Group Updates

We’ve made a number of recent enhancements to our Groups plugin that will really help site owners:

Put the Key Redemption field anywhere in your Gravity Form registration form. This one is a huge improvement for several Groups users; the code entry field is no longer restricted to the bottom of the form. Instead, you can add the “Uncanny Code” field type anywhere on your form.

Include passwords in user uploads. CSV files can now include a specific password rather than the Groups plugin force a random password. This is a huge benefit on sites where students may not have an email address, as instead of requiring that an email be sent with their password, or a link to reset the password, nothing needs to be confirmed by email.

User verification in Gravity Forms is now supported, so you can have users confirm their email addresses before registration.

Tin Canny 3.0

We’ve had some big 3.0 plugin releases over the last few weeks, but today’s Tin Canny release is the biggest overhaul yet. It’s basically a complete rewrite of the reporting engine to improve performance and scalability on larger sites, with lots of smaller improvements and new features thrown in to round things out. Almost everything about reporting is now different, so if you’re an existing user, we highly recommend testing on a Staging site first.

Beyond the improvements behind the scenes, there’s a lot different on the front end too—starting with a complete redesign of all reports and charts. They’re far more mobile-friendly and easy to use.

Tin Canny Course Report

Breadcrumb links are new, and now individual user reports include Gravatar images if available for your users. This helps to personalize reports and make them more visually appealing.

Tin Canny hadn’t yet fully supported Adobe Captivate 2019, but now it does! The 3.0 release of Tin Canny will help you get more out of Captivate on your LearnDash sites—as will even more controls over resetting Tin Canny SCORM and xAPI records. Tin Canny 3.0 supports purging records for individual users. For testing purposes or clearing bad data, this is going to be a big help to a lot of sites that need to reset user records independently.

Delete Individual Tin Can Records

Rounding out the list of new features, Tin Canny users can now disable the Tin Canny dashboard widget to improve load times, and more Gutenberg block support has been added for the quiz reports.

Tin Canny 3.0 includes dozens of other behind-the-scenes improvements, including:

  • Support for additional H5P module types
  • Better navigation between reports, like going from Course > User > Course report for a user instead of Course > User > Course List > Course report
  • Improved compatibility with MySQL 8
  • Better notices when no data is available
  • Better translation support
  • Better consistency of data across courses and groups

For a full list of the changes, make sure to read the changelog at https://www.uncannyowl.com/knowledge-base/tin-canny-learndash-reporting-changelog/.

Existing users: Please do consider testing this on a Staging or Development site before you deploy the release on your live site. Tin Canny 3.0 has been through a lot of internal testing but there may still be slight differences in report output compared to what you’re used to.

Uncanny LearnDash Groups 3.0

It’s time for another 3.0 plugin release!

We’ve had some big 3.0 releases over the last few weeks, but today’s Uncanny LearnDash Groups 3.0 update is really in a class of its own with new features. If you use LearnDash Groups, you should be very excited.

One thing that really set our Groups plugin apart was the flexible ecommerce offerings it made possible. You could create and sell course bundles to organizations, let people pick and choose their own courses to create groups, even set up all of that with subscription support. But it never offered a way for learners to add themselves to groups with a purchase.

Well, now it does. Learners can buy a WooCommerce product that adds them to a LearnDash Group automatically. Just create a product, map it to a LearnDash Group, and anyone that buys it gets added to the group. No codes, no changing the user to a Group Leader, the learner just gets instantly added to the group. And did we mention full support for subscriptions with the WooCommerce Subscriptions plugin? That’s right, set up a subscription product, map it to a group, and the user gets access to the group but only for as long as they keep paying.

That’s a huge benefit to LearnDash sites, but it’s not even the biggest change in the Groups 3.0 release. We listened to feedback from our users and in 3.0 we added full front-end management of assignments and essay questions for Group Leaders. Definitely one of our biggest complaints since launch was that Group Leaders still had to visit /wp-admin/ for some Group Leader functions. Well, now they don’t. 🙂 There’s no longer any reason for Group Leaders to need wp-admin access if they use Uncanny LearnDash Groups 3.0.LearnDash Assignment Management


We know that’s going to help a lot of sites out. We did the same thing for quiz essays as what you see above for assignments; links to questions, grading, the course, lesson, quiz, and comments.  It’s all from a single, streamlined interface in the front end.

The Uncanny LearnDash Groups plugin only recently added the ability for Group Leaders to email members of a group. However, Group Leaders could only email all users of a group, not just users that haven’t completed or started their training. in Groups 3.0 Group Leaders can send group members emails based on their course completion status:


But we didn’t stop here. Here are some other things that made it into the 3.0 release:

  1. Our new Uncanny 3.0 plugin architecture for easier support and license management.
  2. Basic Gutenberg block support
  3. More hooks for developers.
  4. No more “Existing User” option in the Add User modal! This was confusing; Group Leaders won’t necessarily know if a user is new or already exists in the system, so now we handle this automatically.
  5. Better translation support, multisite support and third party email plugin support.

As always with our 3.0 plugin releases, this is a big one and we highly recommend testing things out on a Staging site before you take it live.

This release means only one Uncanny Owl plugin still has an outstanding 3.0 release, and it’s Tin Canny. Look for that one next week!

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: