Uncanny Toolkit for LearnDash


Important: This plugin requires PHP 7.4 or higher and LearnDash 4.2 or higher.

The Uncanny Toolkit for LearnDash adds 16 modules that every elearning site needs, including a login form, login redirect, resume capabilities and more. Trusted to power over 30,000+ LearnDash sites, it’s the easiest way to improve the learning experience for your students. Translation ready and multisite capable!

The Uncanny Toolkit for LearnDash adds the following features to your LearnDash site:

  • Disable Emails: While this module is active, WordPress and any plugins using native WordPress email functions will be prevented from sending email. Use this on development and staging sites to block accidental customer emails.
  • Front End Login: Add full-featured login forms with reCaptcha, password reset, and user validation support to front end pages.
  • Hide Admin Bar: Hide the Admin Bar at the top of WordPress pages based on user role.
  • LearnDash Breadcrumbs: Easily add breadcrumb links that work with courses, lessons, topics and quizzes using a shortcode or template change.
  • LearnDash Certificate Widget: Display all LearnDash certificates earned by a user in a widget.
  • LearnDash Groups in User Profiles: Display a user’s LearnDash Group memberships in the user profile.
  • LearnDash Resume Button: Inserts a button that allows learners to return to the course, lesson or topic that they last visited.
  • Log In/Log Out Links: Add Log In and Log Out links to site menus, or to any page or widget with a shortcode.
  • Login/Logout Redirects: Redirect learners to a specific URL after signing in or out of the site.
  • Menu Item Visibility: Toggle the visibility of menu items based on whether or not users are signed in to the site.
  • Not Enrolled Redirect: Redirect all non-admin roles to a specific URL if they are not enrolled in the course. This is useful for directing prospective customers to a course sales page.
  • Quiz completion advances to next step: Automatically advance to the next course step when a user clicks “Click here to continue” on quiz results page inside a lesson or topic.
  • Show LearnDash Certificates: Display a list of LearnDash certificates (course, quiz and group) earned by the user, with the most recent at the top.
  • Show or Hide Content: Conditionally shows content to either logged in or logged out users. Great for Open course types or protecting content on a course page.
  • Topics Autocomplete Lessons (Legacy): Automatically marks lessons as completed when all topics and quizzes for that lesson are marked complete.
  • User Switching: Easily and securely switch between users. Great for testing your site and troubleshooting user issues.

We welcome contributions to the Uncanny Toolkit! The plugin is managed in a GitHub Repository.

Ready to take your LearnDash site even further?

The Pro version of the Uncanny Toolkit adds a continuously expanding list of powerful features (currently 35) to the Toolkit. These include:

  • Autocomplete Lessons & Topics: Automatically mark all lessons and topics as completed on user visit and remove Mark Complete buttons. Global settings can be overridden for individual lessons and topics.
  • Autocomplete Lessons & Topics on Fluent Forms Submission: Automatically mark LearnDash lessons and topics as complete when the user submits a Fluent form.
  • Autocomplete Lessons & Topics on Formidable Forms Submission: Automatically mark LearnDash lessons and topics as complete when the user submits a Formidable form.
  • Autocomplete Lessons & Topics on Gravity Form Submission: Automatically mark LearnDash lessons and topics as completed when the user submits a Gravity form.
  • Autocomplete Lessons & Topics on Quiz Results Page: Automatically mark LearnDash lessons and topics as completed when the user reaches the quiz results page with a passing mark (so users that forget to click “Click here to continue” don’t get stuck in a course).
  • Autocomplete Lessons & Topics on WPForms Submission: Automatically mark LearnDash lessons and topics as complete when the user submits a WPForms form.
  • Autocomplete Lessons & Topics When Quiz Is Graded : Automatically mark LearnDash lessons and topics as completed when the associated quiz is manually graded.
  • Certificate Preview: Get a preview of your LearnDash certificate without leaving the editor.
  • Course Dashboard: Display a list of enrolled courses to students in a variety of ways. This tool also makes it easy to access individual lessons, topics, quizzes, quiz results and certificates for students.
  • Days Until Course Expiry: Display the number of days until the learner’s access expires for the current course. This is a useful shortcode to include on course pages.
  • Download Certificates In Bulk: Download course, quiz and group certificates in bulk. Available to admins and Group Leaders.
  • Drip Lessons by LearnDash Group: Unlock access to LearnDash lessons by setting availability dates for LearnDash Groups rather than for all enrolled users.
  • Drip Topics by Group: Unlock access to LearnDash topics by setting dates for LearnDash Groups rather than for all enrolled users.
  • Duplicate Pages & Posts: Easily clone pages, posts, LearnDash courses, lessons, topics, quizzes and more.
  • Email Course Certificates: Sends a copy of certificate earned from course completions and optionally save certificates on the server.
  • Email Group Certificates: Sends a copy of certificate earned from group completions and save certificates on the server.
  • Email Quiz Certificates: Sends a copy of certificates earned from quiz completions and save certificates on the server.
  • Enhanced Course Grid: Add a highly customizable grid of LearnDash courses to the front end, learner dashboard or anywhere you want. This is a great tool for sites with a large number of courses.
  • Enhanced LearnDash CSV Reports: Add additional columns to the LearnDash Course CSV report, including custom user and course meta records.
  • Enhanced Lesson/Topic Grid: Add a highly customizable grid of LearnDash lessons/topics to the front end, learner dashboard or anywhere you want.
  • Group Expiration: Set expiration dates for LearnDash groups so that course enrolment for the group is removed on the specified day. Reminder emails can be sent to users advising them of group expiration.
  • Group Forums with bbPress: Create group-specific discussion forums with bbPress. Only group members will have access to group-specific forums. Includes a handy widget.
  • Group Login Redirect: Adds a group-specific login redirect setting to LearnDash groups. Automatically redirect group members to a specific page on login.
  • Group Logo/List: Add group-specific logos to any page, including registration pages. A shortcode to list a user’s LearnDash Groups is also available.
  • Group Registration: Allow users to add themselves directly to LearnDash groups on registration by assigning each group a unique registration URL. Users can also change or add groups themselves by visiting group URLs.
  • Import Users: Create or update users and assign them to courses and LearnDash groups from a CSV file. Supports custom user fields.
  • Improved Group Leader Interface (deprecated): This legacy module helped LearnDash 2.x and 3.x sites hide unrelated menu entries from /wp-admin/ and enroll Group Leaders in group courses.
  • Lazy Loading Course Navigation: Shortcode that loads a course navigation tree via AJAX. Useful on sites with many lessons and topics where the native LearnDash Course Navigation widget is extending page load time.
  • Learner Transcript: Add printable transcripts to the front end for your learners. This is a great way for learners to have a record of all course progress and overall standing.
  • Lesson/Topic/Quiz Table Colors (Legacy): Change the background and header text color of LearnDash tables. This module modifies the course, lesson, topic, quiz, and Pro Dashboard tables. (Legacy LearnDash theme only).
  • Reset Progress Button: Inserts a button that allows learners to reset all activity for a course, allowing them to retake it.
  • Restrict Page Access: Restrict access to any page by logged in/out status, course enrollment, group membership, or role. Display a message or automatically redirect users that are denied access.
  • Simple Course Timer: Tracks time spent in all LearnDash courses, lessons, and topics, and detects when a user is idle. Course completion time and total course time are both added to LearnDash reports. Enables blocking access to quizzes until minimum time spent in a course.
  • Single Page Courses: Create microlearning courses that have no associated lessons; this moves the Mark Complete button up to the course level.

Uncanny Automator

If you like the Uncanny Toolkit, you’ll love Uncanny Automator! Our free no-code automation plugin connects LearnDash to over 150 plugins and apps plus other WordPress sites. Build personalized learning paths and automated instructional workflows with an easy-to-use interface in minutes. Trusted by over 40,000 WordPress sites to build powerful learning workflows and automations.

More LearnDash Plugins!

Uncanny Owl offers a full suite of plugins that extend the LearnDash platform and make it easier to build and manage a great learning experience. Here are a few:

  • Tin Canny Reporting for LearnDash: Add support for your SCORM and Tin Can modules inside WordPress as well as powerful drill-down LearnDash course and quiz reports.
  • Uncanny Groups for LearnDash: Make it easy for your customers and member organizations to manage their learners in the front end, track and manage their progress, and buy buy groups with B2B sales tools.
  • Uncanny Codes: An easier way to get your learners into LearnDash groups, courses, and more. Generate codes that can be used by learners to self-enrol into LearnDash groups and courses when they register, make a purchase, or are simply signed in.
  • Uncanny Continuing Education Credits: Assign credits to LearnDash courses and archive LearnDash course and quiz data to offer recurring training.

Follow Uncanny Owl for updates about our latest LearnDash enhancements on Twitter, Facebook and YouTube.


  • 15+ powerful modules
  • Fully-featured Front End Login module with modal support
  • LearnDash Resume Button module – works at a global or course level


This plugin provides 3 blocks.

  • Front End Login
  • Breadcrumbs
  • Resume Button


  1. Ensure that your installation of WordPress is using PHP 7.4 or higher and LearnDash 4.2 or higher.
  2. Upload the contents of the plugin zip file to the /wp-content/plugins/ directory.
  3. Activate the plugin through the Plugins menu in WordPress.


مئی 25, 2023
I tried the free version of this plugin on my LearnDash site and can easily recommend the upgrade to the paid version for anyone who wants the additional functionality and support. The plugin is well done, obviously highly maintained, excellent documentation and a good add on for any LearnDash site.
مئی 17, 2023
I haven’t experienced this kind of dedicated support in a long time! Ryan and his team provided carefully considered responses to my many questions. Based on this extremely positive pre-sale experience, we decided to purchase the Uncanny All Access Pass in order to use a combination of their plugins on our Learndash site. I definitely recommend this company and their plugins to anyone implementing a Learndash LMS.
دسمبر 3, 2022
These guys are the real deal. I’ve been particularly impressed with the tech support. I’ve sent several numerous questions, and every time got a reply that enabled me to solve the problem (with my site, not with the plugin – it works fine!) quickly and easily. I’ll say one other thing: It’s not just the quality of the products they offer, or the speed and robustness of the support; it’s the kind of support they offer. I suspect (though I don’t know for sure) that a lot of Wordpress users are like me – pretty computer savvy, some tech experience, but not specialists by any means. Some plugin designers wouldn’t be able to speak the language of non-specialists; these guys can. I really appreciate that. The input they provide gives people like me outstanding solutions to problems that take our projects from the basic muddling-through level to the kind of level that we could only get if we were real specialists. Outstanding work.
Read all 102 reviews

Contributors & Developers

“Uncanny Toolkit for LearnDash” is open source software. The following people have contributed to this plugin.


“Uncanny Toolkit for LearnDash” has been translated into 3 locales. Thank you to the translators for their contributions.

Translate “Uncanny Toolkit for LearnDash” into your language.

Interested in development?

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

Changelog [2024-07-11]


  • Hide notifications from other plugins on Toolkit pages. #388
  • WP action hooks to facilitate licensing updates in Toolkit Pro v4.3 #389

3.7 [2024-06-20]

New Feature:

  • Front End Login – New CloudFlare Turnstile support #373


  • Front End Login – Added new filter uo_frontend_login_modal_page_lockout_detection to override detection #375
  • Topics Autocomplete Lessons – Renamed to “Topics Autocomplete Lessons (Legacy)” #377

Under the hood:

  • Upgrade to Pro – Change Menu Link Color #380
  • Upgrade to Pro menu item #381 [2024-01-02]


  • Certificate Widget – Throws PHP Error when LearnDash is not active #369
  • WP2FA – 2.6 PHP Error issues #368 [2023-11-23]


  • Removed featured plugin page modifications #365 [2023-11-09]


  • Blocks – Removed lodash dependency for WordPress v6.4+ #363 [2023-10-16]


  • User Switching – Module updated to the latest version #350
  • Front End login – Hide “Description” output from Forgot Password Form when visitors enter invalid email or username #345


  • WP2FA – v2.4+ support added and fixed PHP errors #352
  • Install Automator – Recipe description duplicated #306 [2023-05-31]


  • Allow review requests to be dismissed even if REST API blocked #334
  • Load static assets from inside the plugin #335
  • Suppress admin notices on Automation page #308


  • Install Automator – PHP Error in a specific situation #337
  • Front End Login – PHP warning for redirect_to param #328
  • Vulnerability – Update redirect_url param for review-banner-visibility endpoint to use wp_safe_redirect #331
  • Vulnerability – Fix permissions_callback for review-banner-visibility endpoint #330 [2023-03-06]


  • Log In/Log Out Links – Attributes log_in_text and log_out_text added to change the text of the anchor #301
  • Front End Login & WP2FA – Added support for v2.4+ #206


  • Front End Login & WP2FA – PHP Error with v2.4+ #206
  • Front End Login – Persist action lostpassword redirecting from wp-login.php #317
  • Log In/Log Out Links – Fixed PHP Notice #320
  • Breadcrumbs – Topic omitted from breadcrumb trail when quiz is embedded at topic level #294
  • PHP Error on LearnDash’s third party Add-Ons page in a specific situation #313


  • Notices showing on Get Automator page #295
  • Renamed “Get Automator” to “Automation” #307
  • Automation – Update strings for improved translation support #282 [2023-01-26]


  • CVE-2023-23714 security fix in 1-click installer in a specific situation #309 [2022-11-23]


  • Resume button – Removed the “Completed course” check added in v3.6.4 #292


  • Resume button – Added a filter to optionally not show the button if the course is completed
    • apply_filters( 'uo_resume_button_do_not_show_for_completed_course', false, $ld_course_id )

3.6.4 [2022-11-22]


  • Show Certificates & Certificate Widget – Add support for Group Certificates #263
  • Resume module – New attribute show_name to display the name of the last LearnDash step in the Enhanced Course Grid module #256


  • Not enrolled Redirect URL – Prevent redirect caching – Utilize existing filter uncanny_toolkit_not_enrolled_redirect_nocache #250
  • 2FA – Show loading animation and disable button on submission #234
  • Front End Login – Add “Verify” and “Unverify” to Bulk action menu #194
  • Resume Button – Do not show resume button if the course is completed #261


  • Front-end login + WPML = get_posts not populating Login page dropdown in module settings #266
  • CSRF Vulnerability #259
  • Misc PHP warnings and validation Fixes #248
  • Frontend Login – Block redirect to external website #243
  • Automator notification – Buttons could not be clicked #239
  • Front End Login – Redirect conflicts between login page and login modal #230


  • Add support for number field in Settings fields #286
  • Try Automator – Branding updates #270
  • Show Automator plugin on Add New Plugin’s page #268
  • Add in-plugin notifications #265
  • Pro Upsell Modules – Add “Single Page Courses” #254
  • When activating/deactivating a module, the semi-transparent overlay doesn’t match the size of the module outline #184
  • Updated Gutenberg dependencies #288

3.6.3 [2022-06-16]


  • Show Certificates – New shortcode attributes to show/hide courses/quizzes certificate links #207
  • Front End Login – Password visibility toggle #159
  • Not Enrolled Redirect – Filter uncanny_toolkit_not_enrolled_redirect_nocache added to prevent redirect caching with nocache_headers() #209


  • Improved translation support #198
  • Improved PHP 8.1+ compatibility #173


  • Front End Login – WP2FA settings link broken #217
  • Front End Login – Typo in 2FA error message #190
  • Front End Login – WP2FA – Front-end ajax erroneously invoking 2FA when it’s not enabled #215
  • Show Certificates – Quiz certificate link issue missing time argument fixed #200


  • Update is_pro_active function #222
  • npm – Remove sass-svg & sassdash dependencies #213

3.6.2 [2022-02-09]


  • Login/Logout Redirects – Added filters to dynamically enable/disable redirect #179
  • Certificates List Shortcode – Added filters to manipulate certificate title #171
  • Resume Button – Added filter uo_resume_button_permalink #164


  • Front End Login – reCaptcha causing issue with reset password link sent from wp-admin #177
  • Front End Login – “Remember me” checkbox now works with WP 2FA integration enabled #166

3.6.1 [2021-12-16]


  • Front End Login – Support for 2FA plugin v2.0+ #155
  • Front End Login – uo_login shortcode now respects the “Disable Remember Me Checkbox” setting #156
  • PHP 8.x Compatibility #154


  • Quiz completion advances to next step now forwards the user correctly in LearnDash #152

3.6 [2021-11-17]


  • Updated User Switching code to version 1.5.8 of User Switching plugin by John Blackbourn #141
  • Front End Login – Added support for concurrent login feature in LearnDash Integrity plugin #138
  • Front End Login – Added detection of reCaptcha setting conflict with LearnDash Integrity plugin #137
  • Changes/fixes to ticket submission data when used with Toolkit Pro #135
  • Updated uncanny_toolkit_template_path for easier custom template overrides. Note: any sites using this function should update their code #133


  • Front End Login – Compatibility issue with WP 2FA on some sites #130
  • E_ERROR – wp_remote_get() – admin-showcase.php #128
  • Front End Login – Fixed compatibility issue with redirect filter in MemberPress #111
  • Learn More buttons exceed box bounds when Toolkit Pro or LearnDash not active #110

3.5.2 [2021-08-18]


  • Updated User switching codebase from John Blackbourn’s User Switching plugin version 1.5.7 #97
  • Front End Login – Added custom events for JavaScript developers #89
  • No longer using block_categories filter as it was deprecated in WordPress 5.8


  • Conflict with select2 library in other plugins prevented some toolkit modules from being enabled on some sites #99
  • Front End Login – No longer redirects to /Array when WordPress periodically attempts to verify the site email address #95
  • Front End Login – Unescaped redirect_to parameter causes 403 error on some hosts #94
  • Quiz Completion Advances to Next Step – Redirect erroneously uses $step instead of $step_id resulting in an incorrect redirect in some situations #91

3.5.1 [2021-06-09]


  • Filter on modules page now returns relevant results
  • Quiz Completion Advances to Next Step – No longer advances to next lesson/topic if there are still incomplete quizzes in the lesson/topic
  • Login Redirect – No longer redirects admins on login

3.5 [2021-05-03]


  • WP 2FA – Two-factor Authentication plugin integration for Front End Login module #48
  • One-click Uncanny Automator install #47


  • Notice: Undefined index: uc_exp_email_body in Group Expiration Module #31
  • Notice: Undefined index: uc_exp_email_title in Group Expiration Module #30
  • LearnDash 3.4.x compatibility for Topics AutoComplete Lessons Module #21
  • Topics complete lessons contains LD 3.4.0 incompatibility #46
  • Deprecated notice when saving any module settings. #41
  • Unable to open Settings in the Modules #34
  • Deprecated: add_option was called with a deprecated argument in Config #29
  • Notice: Trying to get property ‘success’ of non-object #28
  • Notice: Undefined index action in Frontend Login Plus #27
  • PHPMailer file path #16
  • Incompatibility with LearnDash 3.4.x in Topics Autocomplete Lessons module #14
  • Topics Autocomplete Lessons: Now only redirects to course level when completing the last topic in the last lesson of a course #4
  • Front End Login: Custom reCAPTCHA text set in settings panel now overrides default reCAPTCHA text #3


  • “Upgrade to Pro” to Plugins page #24
  • Code quality #18 #33

3.4.3 [2021-03-17]


  • Front End Login: Custom reCAPTCHA text set in settings panel now overrides default reCAPTCHA text
  • Topics Autocomplete Lessons: Now only redirects to course level when completing the last topic in the last lesson of a course

3.4.2 [2021-02-11]


  • New parameters to settings array to support future functionality


  • Quiz completion advances to next step: “Click here to continue” button on last quiz of a course will now redirect to course page instead of lesson/topic
  • Not Enrolled Redirect: Now detects if users are enrolled via group access


  • User Switching: Could not switch users on some site if Front End Login is enabled
  • Deprecated: Function get_magic_quotes_gpc()
  • Notices on module page when LearnDash is not active
  • Disable Emails: PHP notice: Constant DISABLE_EMAILS_OPTIONS already defined
  • Front End Login: Users that become unverified and then are reverified will now receive a notification email

3.4.1 [2021-01-04]


  • Front End Login – Option to ignore login redirects when using the modal login
  • Front End Login – Option to customize the user verification email
  • Front End Login – Option to disable the user verification email
  • Front End Login – Filter uo_frontend_login_args for developers to modify the login form arguments
  • Front End Login – Show custom error messages in the Forgot password form
  • Front End Login – Actions to support user verification trigger in Uncanny Automator
  • Added do_action( 'toolkit_settings_save_validation', $class, $options ) to let users manipulate module settings


  • Front End Login – Redirects from /wp-login.php to the assigned login page now preserve the redirect_to parameter in the URL


  • Topics Autocomplete Lessons – Activity tables now updated with proper completion data for the last topic in a lesson
  • Front End Login – Unverified users are no longer able to log in
  • Fixed – Log in / log out redirect – Conflict with frontend login module

3.4 [2020-11-05]

  • New Module: Quiz completion advances to next step – Automatically advance to the next step when user clicks “Click here to continue” on final quiz page of a lesson/topic
  • Updated: Front End Login – Users created before the module was activated or while the module is not activated are set to “Auto verified” instead of “Not verified”
  • Updated: Front End Login – Update to allow basic auth plugin to work with wp-json routes. Contributed by asppsa

3.3.4 [2020-09-30]

  • Updated: Menu Item Visibility – Updated nav menu walker function for improved compatibility with newer versions of WordPress
  • Updated: Added permission_callback to all Rest API calls for WordPress v5.5 compatibility
  • Fixed: Front End Login – Redirect attribute now redirects correctly when logging in using modal login form
  • Fixed: Front End Login – PHP notice: Trying to get property ‘ID’ of non-object on some non-post pages

3.3.3 [2020-08-05]

  • Updated: Front End Login – Replaced file_get_contents with wp_remote_post to improve compatibility with some hosts
  • Fixed: Front End Login – Javascript notice – Uncaught TypeError: Cannot read property ‘currentPageIsLoginPage’ of undefined
  • Fixed: Topics Autocomplete Lessons – When someone other than the user (e.g. an Admin or Group Leader) marks the last topic in a lesson complete for the user the associated lesson is now automatically marked complete

3.3.2 [2020-07-27]

  • Updated: Front End Login – Improved compatibility of modal login with server-side caching
  • Updated: Front End Login – Added redirect attribute to uo_login_ui shortcode
  • Updated: Front End Login – Modal Login menu link now reloads the page if clicked while the user is on the login page specified in settings
  • Updated: Resume Button – Resume data now deleted when course progress is cleared
  • Updated: Resume Button – No longer appears on LearnDash post types (Universal resume button only; course-specific resume button will still appear on course pages)
  • Fixed: Not Enrolled Redirect – No longer redirects on the course archive page

3.3.1 [2020-06-25]

  • Updated: Menu Item Visibility – Updated to version 1.10.1 by Kathy Darling
  • Fixed: Resume Button – Input type changed back to “submit” from “button”
  • Fixed: Front End Login – Login form showing up twice on login pages created with the Gutenberg editor
  • Fixed: PHP notice $modal_link undefined on modules page

3.3 [2020-06-16]

  • Added: Resume Button – Added shortcode to output a properly formatted link: [uo_learndash_resume_link] or URL [uo_learndash_resume_link url_only=”yes”]
  • Added: “Help” button on module settings dialogs
  • Added: Front End Login – New pop-up modal login form
  • Added: Front End Login – AJAX support for common actions (Boxed with shadow template only)
  • Updated: Front End Login – Redirect to login page changed from 302 to 301
  • Updated: Front End Login – Improved compatibility with Login/Logout Redirects module
  • Updated: Front End Login – reCAPTCHA now rendered explicitly to support more than one reCAPTCHA on the same page
  • Updated: Front End Login – Removed jQuery dependency from front end assets
  • Updated: Changed plugin name from “Uncanny LearnDash Toolkit” to “Uncanny Toolkit for LearnDash”
  • Updated: Resume Button – Improved translation support
  • Updated: User Switching updated to version 1.5.4 by John Blackbourn
  • Updated: Improved compatibility with WordPress versions < 5.1
  • Updated: Code cleanup
  • Fixed: Front End Login – Workaround to enable users to log in if the login page is in the trash
  • Fixed: PHP Notice: register_rest_route was called incorrectly in WordPress 5.4.2 and newer
  • Fixed: Blocks now show up in Gutenberg editor

3.2.2 [2020-03-19]

  • Updated: Resume button – “RESUME” Button text now localized
  • Fixed: Uncanny Toolkit Pro Gutenberg blocks were unavailable unless at least one module from the Uncanny Toolkit (free version) that contained a Gutenberg block was active
  • Fixed: Front End Login – Admins being redirected to blank wp-login.php page on login on some sites
  • Fixed: Topics Autocomplete Lessons – After completing all topics, lesson no longer autocompleted if it contains an incomplete assignment

3.2.1 [2020-02-27]

  • Added: Front End Login – Require strong password option for password reset form (minimum 8 characters including 1 uppercase letter, 1 lowercase letter and 1 number)
  • Updated: Not Enrolled Redirect – Redirect field now accepts shortcodes
  • Updated: Tweaked CSS style for select2 dropdowns in /wp-admin
  • Updated: Front End Login – redirect_to parameter in URL now takes precedence over redirect shortcode attribute and Login/Logout redirects module
  • Fixed: Front End Login – PHP fatal error on some sites when initiating a password reset before LearnDash settings are initialized

3.2 [2020-01-02]

  • Added: New Module: Disable Emails – When active, disables all emails sent via wp_mail function. Fork of the excellent Disable Emails plugin by webaware
  • Added: Certificate Widget/Show Certificates shortcode – Setting to output Certificate Name instead of Course/Quiz name
  • Added: Certificate Widget – Sort order options
  • Added: Front End Login – redirect_to parameter now supported
  • Updated: Breadcrumbs – Dashboard link now inserted into native LearnDash breadcrumbs on 3.0 template
  • Updated: Front End Login – Added priority of 100 to wp_mail_content_type filter to avoid conflicts with some email plugins such as WP Better Emails
  • Updated: User Switching – Link now floats right when Focus Mode is enabled for improved accessibility
  • Fixed: Front End Login – Fatal errors when resetting password after registration on some sites
  • Fixed: Front End Login – Invalid password reset link message now displayed before password reset form is displayed
  • Fixed: Front End Login – Invalid login/password messages not displayed when entering incorrect credentials on some sites
  • Fixed: Front End Login – Shortcode not detected when placed inside a Gutenberg layout block
  • Fixed: Duplicate Pages and Posts module missing in list Pro modules
  • Fixed: Redirect if not enrolled – PHP notice: Undefined property
  • Fixed: Updated: Some strings incorrectly using uncanny-toolkit-pro textdomain


  • Added: Front End Login – Added redirect parameter to uo_login shortcode to allow form-specific redirects
  • Updated: Front End Login – Failed login redirect now ignored for REST and AJAX requests
  • Updated: Front End Login – Eliminated 500 error on password reset when other plugins alter email filters
  • Updated: Front End Login – Improved translation support for strings related to account verification
  • Updated: Certificate Widget/Show Certificates – Now displays the course/quiz name instead of the certificate name
  • Fixed: Send Course/Quiz Certificate by Email – Email content loses line breaks on reload
  • Fixed: Clicking the label of “Verify this user and allow them to log in” checkbox no longer toggles the “Rich Editing” checkbox


  • Updated: Restored copyright and GPL license info to User Switching module (thanks @johnbillion!)


  • Updated: Removed PHP_OS_FAMILY constant to avoid false-positives in PHP compatibility checks
  • Fixed: Not Enrolled Redirect – Course settings being reset on save
  • Fixed: Front End Login – Headers already sent error on reset password


  • Added: Course Dashboard (Pro): Logic to select dashboard 3.0 theme when module is activated or LearnDash 3.0 theme is active
  • Updated: Improved radio button behavior in module settings dialogs
  • Fixed: Front End Login – Issue that caused “Headers already sent” warning on some sites
  • Fixed: Hide Admin Bar – Admin bar no longer appears in Elementor editing view


  • Added: Automatic template overrides! Override any file in the /src/templates folder by copying it into /uncanny-toolkit/ in your child theme
  • Added: Front End Login – Option to disable “Remember Me” checkbox
  • Updated: Front End Login – Improved compatibility with other login plugins when reCaptcha is enabled
  • Updated: Front End Login: Default template no longer displays email field after the reset password form is submitted
  • Updated: Log In/Log Out Links – Improved translation support
  • Updated: Hide Admin Bar – The admin bar is now always visible to all users with the “manage_options” capability
  • Updated: Resume Button – Removed next post prefetch meta tag on courses, lessons, topics and quizzes to prevent Firefox users from being sent to the wrong lesson/topic when resuming
  • Fixed: Required PHP version message now correctly states PHP 5.6 or higher is required


  • Updated: Improved compatibility with Internet Explorer 11
  • Fixed: Front End Login: Forgot password email body field was duplicating content when settings saved on some sites
  • Fixed: Login/Logout Redirect: Resolved conflict with Group Login Redirect module (Toolkit Pro)


  • Added: Front End Login – Added recaptcha support to [uo_login] shortcode
  • Added: Plugin will automatically deactivate and show notice if PHP < 5.6 is detected
  • Updated: Improved scroll handling in module settings dialogs
  • Fixed: Front End Login – Unrecognized URL parameters no longer cause %placholder% to be rendered on the login form
  • Fixed: Typo in %placholder%
  • Fixed: Module settings dialogs with many options now render properly in Firefox
  • Fixed: Z-index issue on select2 elements in /wp-admin
  • Fixed: Missing dependency error: blocks.style.build.css


  • Important: If you had overridden the Front End Login template file, you will need to update the template override by making a copy of the new file.
  • This release features a completely overhauled Front End Login module, including:
    • A new modern, clean design (selectable from module settings)
    • Many additional options for customizing text, including the password reset email
    • Better templating system, making it easier to make design changes without modifying the core plugin
    • Recaptcha support
    • New optional, customizable Register link
    • The link in the password reset email now goes to a front end page instead of the WordPress password reset page
  • Added: Gutenberg blocks for breadcrumbs and resume button modules
  • Added: WAI ARIA support in breadcrumbs module
  • Added: Tab structure for toolkit pages
  • Added: Help page for easier access to plugin documentation
  • Added: Log In/Log Out Redirects – Default priority set to 999, added field to manually set priority
  • Updated: Module names changed for consistency:
    • LearnDash Certificate Widget > Certificate Widget
    • LearnDash Groups in User Profiles > Groups in User Profiles
    • LearnDash Resume Button > Resume Button
    • Show LearnDash Certificates > Show Certificates
  • Updated: Hide Admin Bar – Improved multisite support
  • Updated: Hide Admin Bar – Added priority 11 to filter for improved compatibility with some themes and plugins
  • Updated: Cleaner, modernized UI for modules page
  • Updated: Changed admin URLs for toolkit pages
  • Updated: User Switching – Added position:relative to link to switch back to the admin user in the user switching module to improve theme compatibility
  • Updated: Reorganized plugin .js and .css files
  • Updated: Learndash Groups in User Profiles – Now uses LearnDash API for querying groups


  • Added: Course-specific Resume Button; can be placed on course pages
  • Added: Option to output Resume Button destination below resume button
  • Added: Option to include current page in LearnDash Breadcrumb trail
  • Updated: Improvements to the Reset Password functions of Front End Login module
  • Updated: Ignore AJAX requests on Logout Redirect
  • Updated: Removed 999 priority on Hide Admin Bar module to address incompatibility with Elementor builder
  • Fixed: Admins are no longer redirected to lessons when approving assignments with Topics Autocomplete Lessons module enabled
  • Fixed: Page doesn’t exist error in Resume Button function in rare circumstances
  • Fixed: Notice in Redirect If Not Enrolled Module
  • Fixed: Removed slashes sometimes appended to email body content in Email Course/Quiz Certificate modules


  • Fixed: Certificate widget and shortcode now display LearnDash certificates
  • Fixed: Certificate widget now correctly renders Uncanny Continuing Education certificates


  • Fixed: Resume Button: Fatal error on LearnDash versions < 2.5
  • Fixed: Not Enrolled Redirect: Undefined index notice


  • Added: Additional string localizations
  • Added: List view for modules in Toolkit settings
  • Updated: Autocomplete Lessons and Topics: When enabled, a “Done” button is now added to last lesson in a course (returns user to course page)
  • Updated: Front End Login: Labels now positioned above login fields by default
  • Updated: LearnDash resume button: Improved compatibility with Shared Course Steps and Nested Permalinks enabled
  • Fixed: Breadcrumbs: Topic no longer appears twice in breadcrumbs on topic quizzes
  • Fixed: Certificate Widget: Notice no longer appears when no certificates have been earned


  • Added: New Module – Not Enrolled Redirect – Redirect a user to a specified URL if they attempt to access a course in which they are not enrolled
  • Added: Front-End Login – Added label setting for login form (Username, Email, Username or Email, Login)
  • Updated: Front End Login – Cleaned up some error messaging in the user interface
  • Updated: Front End Login – Made some additional strings translatable
  • Updated: User Switching code to version 1.3 of User Switching plugin by John Blackbourn
  • Updated: Confirmation message when disabling a toolkit module now appears in green instead of red
  • Fixed: JavaScript error on the Toolkit settings page in some environments when debug is enabled.


  • New Module: User Switching – enables admins to easily switch to any other user – Based on User Switching by John Blackbourn: https://wordpress.org/plugins/user-switching/
  • Added: Support for LearnDash 2.5
  • Updated: Hide Admin Bar action priority (now 999)
  • Updated: Improved multisite support


  • Updated: Certificate widget now recognizes course certificates
  • Fixed: Course complete action was called repeatedly when Topics Autocomplete Lessons module was active


  • Fixed: Single quotes are saved properly in toolkit module settings
  • Fixed: Front end login reset password function on Edge and Safari


  • Fixed: WooCommerce/Third Party plugin notices popping up in Pro Toolkit Ad banner
  • Fixed: Modules not loading because DB updates were not saving slashes on some hosts
  • Fixed: Password reset when WordPress is installed in a subdirectory


  • Fixed: Restored ‘Sample Tag’ module
  • Fixed: Removed invalid slashes when saving settings


  • Fixed: Flush admin scripts/styles


  • Added: Module filtering options in the Toolkit UI
  • Fixed: Minor issue in auto-completion logic when multiple quizzes are assigned to the topic/lesson
  • Fixed: Front End Login now accepts username or email if user approval is turned on
  • Fixed: Minor layout issue in WordPress menu editor when Menu Item Visibility module is enabled


  • Added: Textarea as an option for module settings
  • Added: Priority 11 to menu item visibility filter; will now override common theme menu enhancements like megamenu


  • Removed: Dynamic announcement banner to admin UI


  • Added: Dynamic announcement banner to admin UI
  • Updated: Changed log in link shortcode [uo_login] to [uo_login_link]
  • Fixed: Log in link redirects to login empty


  • Added uo_login_link shortcode to replace deprecated uo_login in Login/Logout Menu
  • Added WordPress 4.6 support
  • Improved design of module settings
  • Improved compatibility with Nav Menu Roles plugin
  • Fixed LearnDash Group User Profile module to only show group name if group ID is valid
  • Fixed multiple escape slash issue with custom module
  • Fixed auto completion of lessons if topics are complete but quiz is not
  • Reworded Front-End Login error label


  • Blocked Pro reminders from appearing on page reloads after dismissal


  • Added logout redirect setting
  • Added color pickers
  • Added links to Pro modules plugin
  • Added admin notification when user is manually approved
  • Added links to Knowledge Base articles for all modules
  • Fixed automatic approval of assignment when Topics Autocomplete Lessons module is on
  • Fixed widget certificate link
  • Enhanced security for mark lessons complete


  • Fixed learndash_lesson_completed to allow hooks from BadgeOS and other plugins
  • Fixed Topics Auto Complete Lessons invalid argument for foreach() for non-logged in users
  • Fixed fix notice on 404 pages
  • Fixed do not setup resume button if last page has been deleted
  • Excluded admin users from manual verification script


  • Allowed certificates with the same name
  • Fixed Uncanny Certificate Widget closing tag


  • Fixed course completion date issue with Topics Autocomplete Lessons
  • Added support for alternate course labels (Thanks Eben Hale!)


  • Added PHP/LearnDash/WP version checking
  • Fixed cookies for password reset and registration
  • Updated resume button to match theme button style
  • Fixed verified user email formatting


  • Tested with WordPress 4.5
  • Fixed breadcrumbs function


  • Fixed duplicate breadcrumbs on quiz pages


  • Fixed missing file


  • NEW FEATURE: LearnDash Breadcrumbs
  • Fixed course completion time in CSV output
  • Fixed translation text domain
  • Added sorting of features by name on admin settings page
  • Added bitbucket pull requests for developers
  • Fixed all shortcode now use _ rather than –
  • Dev Only Added simple user registration to Front End Login feature
  • Added translation support
  • Fixed course completion time in LearnDash CVS Reports


  • NEW FEATURE: Log In/Log Out Links
  • Fixed redirect from wp registration page
  • Added registration link to uo_login_ui
  • Added setting to change Resume button text


  • Open Certificate links in new window
  • Fixed blank settings page on older server configuration
  • Fixed auto loading on older server configuration
  • Fixed settings modal on small screens
  • OB Clean Buffer Before AJAX Response
  • Improved support for custom extensions
  • Set Addon Option default as Array()
  • Prevented login lockout if login page set incorrectly


  • Public release