Generated by All in One SEO Pro v4.9.8, this is an llms-full.txt file, used by LLMs to index the site. # Uncanny Owl eLearning for WordPress ## Posts ### [Blog](https://www.uncannyowl.com/uncanny-blog/) **Published:** December 9, 2015 **Author:** Ryan Moore **Content:** # The Uncanny Blog --- ### [LearnDash's Pricing Is Changing. Here's What It Means for Your Site, and What We're Doing About It](https://www.uncannyowl.com/learndashs-pricing-is-changing-heres-what-it-means-for-your-site-and-what-were-doing-about-it/) **Published:** October 23, 2026 **Author:** Ken **Content:** Over the past week we’ve heard from a lot of LearnDash site owners who are upset, confused, or both. If you’re one of them, this post is for you. We’ll lay out what’s actually changing, what your realistic options are, and what Uncanny Owl is committing to so that whatever you decide, your site keeps working. We’ve been building plugins for LearnDash for over a decade. Our business grew up alongside LearnDash, and tens of thousands of organizations run our tools on LearnDash sites today. So this isn’t an outside observer’s take. These changes affect us too, and we want to share with you how we’re responding. ## What’s changing Liquid Web, which has owned LearnDash since 2021, has rolled its remaining WordPress plugins into a single package sold under its Nexcess brand. Here’s what that means in practice, based on the [Nexcess software packages page](https://explore.nexcess.com/software-packages) and the [Liquid Web LearnDash page](https://www.liquidweb.com/software/learndash/) as of October 20, 2026: - **LearnDash is no longer sold on its own.** Every plan now includes LearnDash, Kadence, The Events Calendar and Give, whether you use the other three or not. - **The cheapest plan is $350 per year for one site.** The other tiers are $599 for 10 sites, $799 for 25, $899 for 50 and $999 for 100. A single-site LearnDash license was previously in the $199 to $259 range depending on when you bought, and many long-time customers were on legacy pricing lower than that. - **Existing licenses are being moved to the new plans.** In Nexcess’s words, “individual plugin subscriptions are being retired as licenses renew.” Your current rate applies through your current billing term, and at your next renewal on or after November 16, 2026 you’ll be moved onto the package. - **You’ll get 30 days’ notice.** Nexcess says renewal reminders go out 30 days before you’re charged, with your new plan details. - **If you don’t renew, your site keeps running.** Nexcess states that support, automatic updates and security patches stop when a license lapses, but LearnDash itself doesn’t stop working. For some customers, especially agencies managing dozens of client sites, the per-site math isn’t dramatically different from before. For a single-site course business, or anyone on legacy pricing, it’s a big jump for plugins you may never install. That’s where most of the frustration is coming from. ## Your three realistic options Every site is different. But as we see it, there are three paths, and we’re committed to supporting you on all of them. ### 1. Renew on the new plan If you use Kadence, The Events Calendar or Give already, or you run a lot of sites, the bundle may be reasonable value. Nothing changes for you with our plugins. Everything keeps working exactly as it does today, and we’ll keep supporting new LearnDash releases as we always have. ### 2. Stay on the LearnDash version you have, and don’t renew This is the option a lot of people are considering. LearnDash is a self-hosted plugin. If you let your license lapse, your courses, quizzes, enrollments and progress data all stay exactly where they are, and the plugin keeps running. The trade-off: you won’t receive LearnDash updates, including security patches, and you won’t have access to LearnDash support. Over time, WordPress and PHP move on, and an unmaintained plugin can eventually run into compatibility problems. That’s a risk to weigh, and we’d encourage anyone on this path to keep WordPress core, PHP and their other plugins current, and to keep good backups. What you shouldn’t have to worry about is whether *our* plugins will keep working. See our first commitment below. ### 3. Move to a different LMS If the new pricing is the last straw, you’re not alone, and there are good WordPress LMS options out there. Migrating courses is real work, so don’t rush it, but if it’s the right move for you, we want to make sure you don’t lose your investment in our plugins when you make it. See our second commitment below. ## Our commitment #1: our plugins will keep working with the LearnDash version you have today If you decide to stay on your current version of LearnDash and stop renewing, we will continue to support compatibility between that version and all of our LearnDash plugins: Uncanny Toolkit for LearnDash (free), Uncanny Toolkit Pro, Uncanny Groups, Tin Canny Reporting, Uncanny Redemption Codes and Uncanny Continuing Education Credits, as well as the LearnDash integration in [Uncanny Automator](https://automatorplugin.com). Concretely, that means: - **We’ll keep supporting the current LearnDash release** (5.2.x) for as long as active customers are running it. - **Our updates won’t require you to update LearnDash.** If a future LearnDash release changes something our plugins depend on, we’ll support both the old and new behavior rather than forcing you forward. - **Our support team will keep supporting you.** A lapsed LearnDash license has no effect on your Uncanny Owl license or your access to our support. We don’t have a sunset date in mind, and we’re not going to create one to nudge anyone toward a LearnDash renewal they don’t want. ## Our commitment #2: more LMS support, and a free license swap when you move For a long time, “Uncanny Owl” and “LearnDash” have been nearly synonymous. That’s changing, and recent events have moved it up our priority list. Here’s where things stand today: - **Tin Canny xAPI/SCORM for WordPress** launched in September. It delivers and tracks SCORM, xAPI and H5P content on any WordPress site, with a built-in Learning Record Store, and it works with any WordPress LMS through Uncanny Automator, or with no LMS at all. - **Uncanny Redemption Codes** already works on any WordPress site. No LMS required. Through Uncanny Automator, code redemption can unlock courses, mark courses or lessons complete, and do anything else Automator can do. - **Uncanny Continuing Education Credits** already works on any WordPress site, and through Uncanny Automator it can award credits for course completions in other WordPress LMS plugins. - **Uncanny Automator** already integrates with every major WordPress LMS, including LifterLMS, Tutor LMS, MemberPress, LearnPress and MasterStudy, so the automations you’ve built around LearnDash have a home wherever you land. And here’s what’s coming: native editions of Tin Canny, Redemption Codes and Continuing Education Credits for other WordPress LMS and membership platforms, starting with MemberPress, LifterLMS and Tutor LMS, with more to follow. These are built on the same engines as the LearnDash versions, with features tailored to each platform. **If you own a license for one of our LearnDash plugins and you move to another LMS, you can swap it for the edition built for that LMS at no charge, as soon as that edition is available.** No repurchase, no prorating, no hoops. You already paid for the capability; we just want you to be able to keep using it. This applies today for anyone switching from Tin Canny Reporting for LearnDash to Tin Canny xAPI/SCORM for WordPress, and it will apply to each new edition as it ships. Just contact our support team. Uncanny Groups and the Uncanny Toolkit are more deeply tied to LearnDash’s own group and course structures, so they’ll remain LearnDash plugins for now. If you rely on them and you’re weighing a move, reach out and let us know. If there’s enough demand, we may consider building out similar solutions for other LMS plugins. ## What to do this week Whichever path you take, a few practical steps: 1. **Find your renewal date** in your Liquid Web account portal, and watch for the renewal email. The new plans apply to renewals on or after November 16, 2026. 2. **Decide before that date.** If you don’t want to be moved to the new plan, you need to turn off auto-renewal before your renewal date. Note that Nexcess says lapsed legacy subscriptions can’t be reactivated, so this is a one-way door. 3. **Take a full backup** of your site before any change, whether that’s a renewal, a lapse or a migration. 4. **Talk to us.** If you’re unsure how any of this affects your Uncanny Owl plugins, open a support ticket. We’ll give you an answer right away. ## We’re not going anywhere We know many of you have built businesses, training programs and certification pathways on LearnDash, and a lot of that work runs through our plugins. None of that is at risk because of a pricing change at another company. We’ll keep our LearnDash plugins working, we’ll keep expanding where our plugins can run, and we’ll make it painless to bring your license with you if you move. If you have questions we haven’t answered here, leave a comment or [contact our support team](https://www.uncannyowl.com/support/). We’ll update this post if the situation changes. Thank you for your support over the years. ❤️ Our team wouldn’t be here without you. **Categories:** Uncategorized --- ### [8 Post-Course Automations That Turn LearnDash Completions Into Growth](https://www.uncannyowl.com/8-post-course-automations/) **Published:** October 9, 2026 **Author:** Brendan Da Costa **Content:** *These post-course automations turn LearnDash course completions into a growth stream—for your learners and your bottom line. Improve retention, boost upsells, and foster community.* **TLDR? Get the highlights:** - Course completion is one of the highest-intent moments in the entire learner journey—and on most LearnDash sites, that high-conversion moment is passed over. - Uncanny Automator listens for LearnDash completion events and fires recipes (that’s what Automator calls its automations) instantly—no code required. - In this post: 8 ready-to-build workflows covering **next-course enrollment, community invites, nurture sequences, on-site campaigns, certificate sharing, feedback collection, membership upsells, and coaching intake**. - Many of these automations work with Automator Lite, available free from the WordPress plugin repository. [**Claim your Pro license. Reclaim your time >>>**](https://automatorplugin.com/pricing/) If you run courses on LearnDash, you’ve probably poured most of your energy into one thing: getting learners to enroll. Landing pages, launch emails, checkout tweaks—all aimed at the moment someone clicks “Start Course”. But here’s the moment almost everyone ignores: the moment a learner *finishes a course*. Course completion is one of the highest-intent events on your entire site. It tells you exactly who your most engaged learners are, and it hands you a precise window to guide them toward whatever comes next—a new course, a community, a membership, a coaching call. On most sites, that window opens, nobody does anything, and it quietly closes. Completion is a signal, not a finish line. We built our LearnDash integration around exactly these moments, and in this post I’ll show you **8 post-course automations for LearnDash** you can build today—every one of them triggered the instant a student completes a course. ## **How LearnDash Automation Works with Uncanny Automator** [**LearnDash**](https://automatorplugin.com/share/learndash) is a powerful LMS, but it doesn’t natively push completion events out to the rest of your stack. When a learner finishes a course, your email platform doesn’t know. Your CRM doesn’t know. Your community plugin doesn’t know. Traditionally, connecting those dots meant custom code or a developer on retainer. That’s the gap **Uncanny Automator** fills. Automator acts as the connective tissue between LearnDash and everything else on (and off) your WordPress site. It listens for key learner moments and fires recipes—trigger-and-action workflows that run automatically in the background. Here are just some of the LearnDash events that Automator can listen for: - A user completes a course - A user passes (or fails) a quiz - A user completes a lesson or topic - A user is enrolled in a course - A user earns a certificate And here’s a taste of what Automator can do the instant one of those triggers fires: - Send emails—from Automator’s own native email action or a connected platform—or SMS - Add learners to communities or membership tiers - Enroll them in follow-up courses or learning paths - Create WooCommerce orders or issue discount codes - Post to Slack, add rows to Google Sheets, update CRM records - Show personalized on-site campaigns via tools like OptinMonster See the [full list of LearnDash triggers and actions](https://automatorplugin.com/all-triggers-and-actions) to see what you can automate. ### **Get started with Uncanny Automator** You can start building the recipes in this article as you read. An Uncanny Automator Pro license gives you added triggers and actions along with a host additional features. However, you can [get started with Automator Lite for free](https://wordpress.org/plugins/uncanny-automator/)—forever. [**Claim your Pro license. Reclaim your time >>>**](https://automatorplugin.com/pricing) 1. From your WordPress Admin Dashboard /wp-admin/, navigate to **Plugins** > **Add new**. In the search bar, enter “uncanny automator” and click **Install** and **Activate**. (This installs the free version of Uncanny Automator which **must be active** to use Automator Pro features.) 2. Purchase your **Automator Pro** license from the [Automator pricing page](https://automatorplugin.com/pricing/). 3. Once purchased, you can **download the latest version** of Uncanny Automator Pro inside [your Automator account](https://automatorplugin.com/my-account/downloads/). 4. After downloading the .zip file, navigate to **Plugins** > **Add New** in /wp-admin/. Click the **Upload Plugin** button, select the Pro .zip file then **install and activate** the plugin. 5. Once activated, be sure to visit **Automator** > **Settings** in /wp-admin/ to enter your license key (in your purchase confirmation email). For a more detailed walkthrough, [click here](https://automatorplugin.com/knowledge-base/installing-uncanny-automator/). ### **Building recipes with Uncanny Automator for LearnDash** Building recipes in Automator is easy—just clicks, no code. And if you purchased an Automator Pro license, you can even [**build recipes through conversation with Uncanny Agent**](https://automatorplugin.com/uncanny-agent-uncanny-recipe-builder-when-to-use-each/). Whichever post-course automations you decide to build, they all follow the same general steps: - **Step 1:** Navigate to **Automator > Add New Recipe** and select **Logged-in Users**. - **Step 2:** Name your recipe. - **Step 3:** In the Trigger panel, select **LearnDash > A user completes a course**. - **Step 4:** In the Actions panel, choose your tool and configure the action. ## **8 Post-Course Automations to Drive Retention and Growth** ### **1. Auto-Enroll Learners in the Next Course or Learning Path (Automator Lite)** **The workflow:** When a learner completes Course A, automatically enroll them in Course B—or add them to an eligibility list with the User Lists Addon, or tag them in your CRM—and send a personalized email introducing the next step in their journey. This is the workhorse recipe for structured course sequences (beginner → intermediate → advanced), certification paths that require modules in order, and drip-style curricula where each course unlocks the next. [](https://www.uncannyowl.com/wp-content/uploads/2026/10/auto-enroll-learners-courses.webp) **Why it works:** Friction is the enemy of progression. When learners have to navigate back to your catalog and re-enroll manually, many simply don’t. Automating the handoff keeps momentum alive at the exact moment engagement peaks. **Pro tip:** Use Automator’s delay feature (scheduling an action to run after a set amount of time) to send the enrollment email 24 hours after completion, giving learners a moment to celebrate before nudging them forward. ### **2. Invite Learners Into a Private Community** **The workflow:** When a learner completes a course, automatically send them an invitation to a private community—a[ **BuddyBoss**](https://automatorplugin.com/share/buddyboss/) group, a[ **Discord**](https://automatorplugin.com/share/discord/) server, a[ **Slack**](https://slack.com/) workspace—and unlock bonus content along the way. Think alumni communities for completed cohorts, practice communities for skill-based courses, or peer accountability groups for learners working through a longer path. [](https://www.uncannyowl.com/wp-content/uploads/2026/10/auto-enroll-learndash-students-in-buddyboss-group.webp) **Why it works:** Community belonging is one of the strongest retention drivers in eLearning. Learners connected to a peer group are far more likely to buy another course, show up to live events, and stick around as long-term members. **Pro tip:** Add a filter (conditional logic that controls when actions run) so the invitation only goes to learners who match specific criteria such as user role or even email domain—not just anyone who crosses the finish line. ### **3. Trigger a Post-Course Nurture Email Sequence** **The workflow:** When a course is completed, add the learner to a targeted email sequence in[ **ActiveCampaign**](https://automatorplugin.com/share/activecampaign) or[ **Mailchimp**](https://automatorplugin.com/share/mailchimp/)—typically by applying a tag—that delivers follow-up value over the next 7–14 days: related resources, instructor insights, student success stories, and finally a relevant offer. This pattern powers post-course drip sequences that lead to an upsell, resource delivery campaigns (cheatsheets, templates, companion guides), and testimonial or review collection. [](https://www.uncannyowl.com/wp-content/uploads/2026/10/tag-learndash-students-activecampaign.webp) **Why it works:** Completion often marks the *beginning* of a learner’s real relationship with your brand. A well-timed sequence extends engagement beyond the LMS, reinforces what they learned, and builds the case for their next purchase. **Pro tip:** If you send emails with Automator’s Email integration, use tokens (dynamic data pulled from your WordPress site and from within recipes) to personalize every email with the learner’s name, the course they just completed, and their enrollment date. ### **4. Promote the Next Course With a Personalized On-Site Campaign** **The workflow:** At the moment of completion, display a personalized[ **OptinMonster**](https://automatorplugin.com/share/optinmonster/) popup or slide-in that showcases the logical next course—tailored to what the learner just finished. Classic plays here: “You completed X—here’s what students take next” popups, limited-time discounts on the follow-up course, and learning path continuation prompts. [](https://www.uncannyowl.com/wp-content/uploads/2026/10/post-course-completion-popup-campaign.webp) **Why it works:** A learner who just completed a course is primed to act—it’s the highest-intent moment on your site. A campaign triggered by that behavior reaches them while motivation is at its peak, instead of hoping they stumble across your catalog later. ### **5. Issue a Certificate and Prompt Social Sharing** **The workflow:** When a learner completes a course, automatically issue their certificate, then send a personalized email encouraging them to share the achievement on LinkedIn or another network—ideally with a pre-written message and a direct link so sharing takes seconds. This shines for professional development and certification courses, credential-worthy skills training, and any course with a strong pride moment (fitness milestones, creative portfolios, you name it). **Why it works:** Social sharing converts learners into organic advocates. When a student posts their certificate on LinkedIn, it’s a retention signal—pride and identity—and a top-of-funnel awareness driver for your next cohort, all in one post. ### **6. Collect Feedback and Build Social Proof Automatically** **The workflow:** When a learner completes a course, automatically send them a feedback survey with a form-building plugin like **Gravity Forms**, **WPForms**, or **Typeform**. Then route the response: a thank-you email (and a review request) for happy learners, or a support touchpoint for dissatisfied ones. Use it for course quality surveys, star-rating and testimonial collection, or spotting at-risk learners who are still enrolled in other courses and might churn. **Why it works:** Asking for feedback signals that you care about the learner experience—which itself increases satisfaction. And routing unhappy learners into a support flow lets you fix problems before they become refunds. **Pro tip:** Feed positive responses into a testimonial display on your course sales page using Automator’s [Dynamic Content Addon](https://automatorplugin.com/dynamic-content-addon/ "Dynamic Content Addon"). ### **7. Convert Completers Into Members or Subscribers** **The workflow:** When a learner finishes a course, trigger an email sequence—or a direct enrollment action—that makes the case for a membership, subscription, or all-access pass. Frame it as the natural next step, not a cold pitch. This is your “unlock all courses” membership upsell, your annual plan for ongoing learners, your tiered offering with community access and coaching baked in. It pairs beautifully with [**Woo Memberships**](https://automatorplugin.com/share/woocommerce-memberships/) or [**Subscriptions**](https://automatorplugin.com/share/woocommerce-subscriptions/), [**EDD Recurring Payments**](https://automatorplugin.com/share/edd-recurring-payments/), or [**Restrict Content Pro**](https://automatorplugin.com/share/restrict-content-pro/). **Why it works:** Learners who buy one course at a time have lower lifetime value and a higher risk of drifting away. Post-completion is the ideal conversion window—motivation and trust are both at their highest—and members generate predictable, recurring revenue. **Pro tip:** Automator’s [Restrict Content Addon](https://automatorplugin.com/restrict-content-addon/ "Restrict Content Addon") (included with Pro Plus and above) handles access management seamlessly when learners upgrade. ### **8. Book a Coaching Call or Onboard Into a High-Touch Program** **The workflow:** When a learner completes a course, send an invitation to book a 1:1 consultation via[ **Zoom**](https://zoom.us/), schedule a coaching call, or apply for a cohort-based program—positioned as the natural graduation from self-paced learning into guided practice. Certification programs route completers into coaching intake. Business courses route them into discovery calls. Bootcamps route them into the next cohort’s application. [](https://www.uncannyowl.com/wp-content/uploads/2026/10/post-course-completion-zoom-meeting.webp) **Why it works:** High-touch programs generate significantly more revenue per learner and build much stronger retention through accountability and relationship. This automation catches learners at peak motivation and routes them straight into your highest-value offer. [**Ready to put your course completions to work? Get Automator Pro >>>**](https://automatorplugin.com/pricing/) ## **What Post-Course Automation Does for Your Learning Business** Individually, each of these recipes is a nice win. Together, they form something bigger: a post-course retention and growth system that runs itself. - Learners progress through your catalog instead of stalling after one course - Average customer value climbs through timely, relevant upsells - Community belonging keeps learners on your platform between courses - Social proof and certificate sharing generate organic reach - Membership and subscription revenue compounds - At-risk learners get flagged and rescued before they churn - And you’re freed from manual follow-up entirely—every step runs in the background With Automator connecting LearnDash to your entire stack, every course completion becomes a launchpad—for your learners’ growth and for yours. ## **Start Building Your Post-Course Automations Today** You don’t need all 8 of these on day one. Pick the one that matches your biggest gap—if learners finish a course and never come back, start with auto-enrollment; if you’re sitting on happy students and zero testimonials, start with feedback collection—and build from there. Remember, **[Automator Lite](https://wordpress.org/plugins/uncanny-automator/)** is free from the WordPress plugin repository and covers many of the automations in this post. When you’re ready for delays, filters, and premium integrations,[ **Automator Pro**](https://automatorplugin.com/pricing/) unlocks the full toolkit. And if you want the bigger picture on automating your whole elearning business, check out our [**Complete Guide to eLearning Automation >>>**](https://automatorplugin.com/complete-guide-to-wordpress-elearning-automation/). Your learners finished the course. Where they go next is up to you. What will you do with more time? ## **Frequently Asked Questions** **Do I need Automator Pro to automate my LearnDash site?** No, you don’t need Automator Pro to automate your LearnDash. Uncanny Automator Lite is free forever and lets you create an unlimited number of recipes. If you’re looking for post-course automations, several of the recipes in this article work with Automator Lite—sending an email when a user completes a course, for example, uses Automator’s native email action and costs nothing. Automator Pro unlocks delays, filters, multi-trigger recipes, and premium actions like membership enrollment and CRM tagging. Start free, upgrade when a recipe calls for it. **Does Uncanny Automator work with my version of LearnDash?** Automator’s LearnDash integration is actively maintained and works with current versions of LearnDash. You can see the full list of supported triggers and actions on our[ **LearnDash integration page**](https://automatorplugin.com/share/learndash). **Can I trigger automations from quiz results instead of course completions?** Yes. Automator includes LearnDash quiz triggers—a user passes a quiz, fails a quiz, or achieves a score threshold—so you can route learners down different paths based on performance. Send strugglers a remedial resource and high scorers an advanced course invite from the same site. **What if a learner completes multiple courses—will they get duplicate emails?** With Uncanny Automator, you’re in control of your automations. Recipes can be limited to run once per user, and filters let you exclude learners who’ve already received a particular invitation or upgrade. Your alumni won’t get invited to a community they already joined. **Categories:** LearnDash, Uncanny Automator --- ### [The 10 Best LearnDash Plugins for 2026](https://www.uncannyowl.com/the-10-best-learndash-plugins-for-2026/) **Published:** July 28, 2026 **Author:** Ken **Content:** *The best plugins to pair with LearnDash in 2026, covering quizzes, automation, ecommerce, reporting, CRM sync, and more*. [LearnDash 5.0](https://automatorplugin.com/share/learndash) shipped earlier this year and delivered some interesting changes behind the scenes, but it didn’t change a lot for end users or introduce any must-have features. It’s still a solid LMS platform, but what’s most interesting isn’t what’s happening in the core product, but what’s happening around it. Some of the most powerful and meaningful additions to LearnDash are coming from third-party developers. These are plugins built on top of LearnDash to do the heavy lifting for everything from assessment and reporting to ecommerce and automation. This post covers the top ten plugins that we recommend for anyone building or leveling up a LearnDash site in 2026. Some are absolute essentials for every LearnDash site, while others have a more niche audience but offer tremendous value. ## Uncanny Toolkit For LearnDash Since our team first introduced it 10 years ago, the [Uncanny Toolkit for LearnDash](https://wordpress.org/plugins/uncanny-learndash-toolkit/) has been a staple on new LearnDash sites. The free version has over 20,000 active installs and a 4.8 / 5 rating on WordPress.org, and the [premium version](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) has been one of the top paid plugins for LearnDash since its introduction. Combined, they add almost 50 new features to LearnDash sites, including a course timer, autocomplete support, email support for course and quiz certificates, user import, a course dashboard, and more. ## Uncanny Automator [Automator](https://automatorplugin.com/) is the plugin that turns the rest of the list from a collection of independent plugins into a unified stack. More than 50,000 sites use the free version, and Automator connects hundreds of plugins and apps to LearnDash. For [LearnDash](https://automatorplugin.com/integration/learndash/) specifically, [Uncanny Automator](https://automatorplugin.com/) has the deepest integration of any automation tool (and it should, given our history with LearnDash plugins). With over 40 triggers and actions, every facet of the student experience can be linked to automated workflows, and the comprehensive set of actions let you do everything from enroll students in courses to awarding credits and resetting progress. ## Woo [Woo](https://automatorplugin.com/share/woocommerce/) (a.k.a. WooCommerce) is the most-installed ecommerce plugin for WordPress, and while there are ecommerce options you can use with LearnDash (especially through Uncanny Automator), WooCommerce remains the most popular. It has a huge ecosystem of add-ons to support almost any scenario imaginable, and LearnDash offers a native integration at no extra cost. LearnDash sites use Woo instead of the LearnDash native billing system because it offers a lot of must-have extra features, including tax support, additional payment gateways, bundles, and more. It also allows the use of other plugins that can complement LearnDash sites, like [Uncanny Groups for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/), which allows selling LearnDash groups and seats for organizations. ## PressPrimer Quiz One of the most interesting new plugins in the LearnDash space this year is [PressPrimer Quiz](https://pressprimer.com/?ref=31), a free quiz plugin built by one of Uncanny Owl’s co-founders. The [free version](https://wordpress.org/plugins/pressprimer-quiz/) covers more than what most paid quiz plugins offer, from AI question generation and anti-cheat protections to multiple scoring models and save-and-resume across devices. Its [premium add-ons](https://pressprimer.com/pressprimer-quiz-pricing/?ref=31) offer what’s been missing from native LearnDash quizzes, including pre/post-test analysis, question analytics, branching logic, spaced repetition, xAPI support, curve grading, proctoring, and over a dozen reports. More than another basic quiz tool that just outputs a score, it helps students learn and retain information using learning science principles. It’s also fully integrated with LearnDash, and its LearnDash quiz import tool makes it easy to switch from LearnDash quizzes to PressPrimer. ## Tin Canny Report for LearnDash The [Tin Canny Reporting plugin](https://www.uncannyowl.com/downloads/tin-canny-reporting/) is about a lot more than LearnDash analytics; it also bundles a SCORM and xAPI content uploader, a native Learning Record Store (LRS) for WordPress, and a suite of LearnDash reporting tools. For organizations that author SCORM and xAPI packages from products like Articulate Storyline and Adobe Captivate, no tool is more convenient for enabling LearnDash integration than Tin Canny. Beyond supporting portable elearning modules from popular authoring tools, Tin Canny includes front and back-end reports for LearnDash course and user records, as well as other useful reports for LearnDash quiz question quality, lesson completion, and topic completion. ## BuddyBoss For any LearnDash site that needs community features (including discussions, social feeds, member profiles, and more), [BuddyBoss](https://automatorplugin.com/share/buddyboss/) has been the standard for almost a decade. The complete stack is four pieces: a free BuddyBoss Platform plugin, a Pro plugin, a theme, and a white-labeled mobile app. While it’s one of the most expensive add-ons on this list (starting at $299 for the theme and Pro plugin only), it offers substantial value for sites where community engagement is important. ## Gravity Forms [Gravity Forms](https://automatorplugin.com/share/gravityforms) is the standard form builder we use on sites, and has our deepest integrations, but there are a variety of form builders we strongly recommend on LearnDash sites. [WPForms](https://automatorplugin.com/share/wpforms) and [Formidable Forms](https://automatorplugin.com/share/formidable) are also great options and integrate well with LearnDash, particularly when used in combination with Uncanny Toolkit Pro for LearnDash. If you’re wondering why a good form plugin is important on LearnDash sites, here are a few use cases: - Login and registration forms - Course surveys - Student file uploads - Simple ecommerce purchases ## WP Fusion The moment a LearnDash site needs to sync with a CRM (including ActiveCampaign, Hubspot, Keap, Salesforce, and more), [WP Fusion](https://automatorplugin.com/share/wpfusion) is typically the answer. [Uncanny Automator](https://automatorplugin.com/) can handle simple CRM use cases and complements WP Fusion well, but WP Fusion has deeper bidirectional sync, controls inside LearnDash post types for tighter tag and list controls, and full event tracking. While there is sometimes some overlap in their basic functions, we see the plugins as complementary, not competitive, and WP Fusion and Automator together make a powerful combination. ## Presto Player Many LearnDash sites offer video lessons, and most of those just embed YouTube or Vimeo videos as iframes. That means students see other recommended videos between lessons, there’s no link between video activity and course progress tracking, and the branding is all wrong. [Presto Player](https://automatorplugin.com/share/prestoplayer) fixes these problems, offering full LearnDash integration, save-position resume, full branding, support for other platforms like Bunny.net, and even self-hosted video. There’s a free plugin to get started, which currently has over 100,000 active installs. ## PressPrimer Assignment Rounding out the top 10 list is [PressPrimer Assignment](https://pressprimer.com/pressprimer-assignment/?ref=31), the only LearnDash add-on dedicated to essay and file-based assessment for LearnDash. Where LearnDash offers basic file uploads and no easy way for instructors to review or grade files, PressPrimer Assignment fills in the gaps and turns assignments into a viable system for learning and assessment inside LearnDash. The free version supports unlimited assignments via file upload or a native text editor, a side-by-side grading system for instructors (with inline viewers for PDF, Word, image, and other text files), and personalized feedback support. The premium add-ons include support for student groups and assignments, inline annotations, AI-assisted grading and proofreading, plagiarism detection, and more. ## Building Your LearnDash Stack This post covers 10 of the best plugins for [LearnDash](https://automatorplugin.com/share/learndash) in 2026. None are required, but including them on your LearnDash site can turn a basic courseware site into something that feels really professional and comprehensive. What’s also worth noting is how many of these plugins (eight of the ten) offer free versions, most of which are extremely capable on their own. You can start improving your WordPress site in minutes—without spending a penny. If you’re new to LearnDash, we recommend starting with the Uncanny Toolkit, then give the other plugins a try as you identify gaps and need to improve your platform. Once you start building out your stack, you’ll find the individual pieces a lot more valuable when you start connecting them together. Everything recommended above connects seamlessly with [Uncanny Automator](https://automatorplugin.com/), helping you build out powerful workflows for your LearnDash website. Happy building! **Categories:** LearnDash --- ### [How to Create an Online Course In WordPress: A Practical Walkthrough](https://www.uncannyowl.com/how-to-create-an-online-course-in-wordpress/) **Published:** July 3, 2026 **Author:** Brendan Da Costa **Content:** *Create an online course in WordPress with this step-by-step LearnDash guide. Plan your structure, build lessons and quizzes, then publish and test your course.* You’ve got expertise and knowledge people would pay to learn. You probably also have opinions on how it should be taught. So the real question was never, “Should I build an online course in WordPress?”—of course you should! Instead, the question that has probably led you here is, “How can I create an online course without first having to take a course in web development myself?” You’ve maybe even landed on a few pages before this one that have “build an online course” in the title only to find that those guides skip the part you actually came for: the building. This post, I promise, doesn’t do that. Whether you are a total WordPress novice or someone with some CMS experience, this guide will take you from “I have an idea” to “I have a published course”, step by step. The content and the teaching will still be yours—you’ll just have a new skill to deliver it. A quick note on scope before we start. I’ll be using LearnDash for this walkthrough, but the fundamentals here transfer to any major WordPress LMS plugin. (An LMS, or learning management system, is the software that hosts your lessons, tracks learner progress, and handles enrollments.) Also, this guide focuses on the build itself; selling the course is its own topic, and I’ll point you to it at the right moment. One more thing worth noting up front: everything we’re about to do can be done with **Uncanny Agent, an AI assistant for WordPress**. We’ll build the course manually first so you understand every piece. Then, at the end, I’ll show you how Uncanny Agent could have built the same thing through plain text conversation in less than half the time. *Want to see what a finished LearnDash course looks like before you build one? Spin up our* [*LearnDash demo site*](https://learndash.uncannyowl.com) *>>>* ## **First things first: choosing the right platform for your online courses** Before you create your first lesson, there are two decisions you’ll have to make. I’ll cover them quickly, because most readers have already made at least one of them. ### **Decision 1: WordPress or a hosted platform?** You’re reading a guide about building an online course in WordPress, so you’re likely already leaning this way—but it’s worth a quick gut-check. **WordPress** wins when you want **full control** over your data, content, branding, site features, and per-student cost structures as you scale, with no platform taking a cut of every sale. Hosted platforms like Teachable, Thinkific, and Kajabi win when you’d rather someone else handle hosting, updates, and infrastructure, and you’re happy working within their templates and pricing. Neither is wrong, it just depends on how much control over your online courses you need and what your growth plans look like. ### **Decision 2: Which WordPress LMS plugin?** If you’ve settled on WordPress, the second decision is which LMS plugin to use as the platform for your courses. The major options include **LearnDash**, **MemberPress Courses**, **LifterLMS**, **Tutor LMS**, and **Sensei**, among others. Here’s the reassuring part: the fundamentals are common across all of them. Courses, lessons, topics, quizzes, certificates, and enrollments work the same way conceptually no matter which plugin you pick. The differences show up in the details—admin experience, reporting depth, group and team features, and the size of the surrounding ecosystem. For this walkthrough I’ll be using **LearnDash**. It’s the most widely deployed WordPress LMS with the most extensible ecosystem for customization and expanded functionality. Most importantly, the build pattern you’ll learn below transfers cleanly to other plugins if you eventually pick differently. ## **What you’ll need before you start** Building an online course in WordPress is like building anything else: you need to gather your materials first. If you already have a WordPress site running, you can clear this in a few minutes. - **A WordPress site.** If you don’t have one yet, you’ll need WordPress hosting and a domain first. That’s its own decision and the right host depends on your budget and traffic plans, so I won’t push one here ([I break down the options in this guide to the best WordPress web hosts](https://automatorplugin.com/the-best-wordpress-web-hosts/)). - **The LearnDash plugin.** Worth being upfront: LearnDash is a paid plugin, not free. You can [buy and download it directly from the LearnDash website](https://automatorplugin.com/share/learndash). For most beginner course creators, the Essentials license is the right place to start—you can always move up a tier later. [](https://www.uncannyowl.com/wp-content/uploads/2026/07/learndash-homepage.webp) - **A LearnDash-compatible theme.** Most well-maintained themes built for online courses or membership sites work fine, so I won’t single one out. If your current theme is actively maintained, it’s very likely already compatible. Once you’ve purchased LearnDash, installing it takes about a minute. From your WordPress Admin Dashboard, go to **Plugins > Add New > Upload Plugin**, select the LearnDash .zip file you downloaded after your purchase, then **Install** and **Activate**. Finally, add your license key under **LearnDash LMS > Settings > Licensing**. That’s everything you need in place. Now, before you click “Add New” on anything, let’s plan. ## **Plan your online course structure before you click anything** The single biggest mistake new course creators make—and why most of them never finish—is opening LearnDash and clicking buttons without a plan. But that’s not you. Spend 30 minutes on paper (or a blank doc), outlining your course first. It will save you hours and headaches later. Here’s what to sketch out before you touch the admin dashboard to make creating an online course in WordPress feel as easy as it should be: - **Your course title and a one-sentence promise.** What does the learner walk away knowing or able to do? If you can’t say it in one sentence, the course isn’t ready to build yet. - **A lesson framework** that moves the learner from where they start to where they want to end up. Think of each lesson as one meaningful step on that journey. - **Topics inside each lesson, if you need them.** A topic is a sub-unit *inside* a lesson—useful for breaking a long lesson into shorter, more digestible learning sessions. Small courses often don’t need them at all, while large courses only feel digestible with them. - **Quiz checkpoints** to reinforce the material that matters most before learners continue to the next lesson or topic. - **A completion certificate**, if it’s relevant to your audience and market. To keep every step in this walkthrough concrete, I’ll build a real course right alongside you. My course is for “Outdoorsman University”, a fictional educational institution for outdoor enthusiasts. Here’s the plan for my first course: - **Course:** *National Parks of Canada* - **Promise:** Learn how Canada’s national parks have evolved from prehistory to the present day, and discover the landscapes, ecosystems, wildlife, climates, and visitor experiences that make each park a must-visit destination for the committed outdoorsman. - **Lessons:** 48 lessons, one for each of Canada’s national parks and national reserves. - **Quizzes:** 288 quizzes, one quiz per topic within a lesson. - **Certificate:** the *Certificate of Completion*, awarded on any course completion. With that structure on paper, every click that follows has a clear purpose. Now, we build… ## **Creating an online course in WordPress with LearnDash** You have your materials and your blueprint—now it’s time to build. In LearnDash and other WordPress LMS plugins, courses are the top-level containers for everything else. Your lessons, topics, quizzes, and certificates all live inside the course or are associated with it, so this is where we start. ### **Step 1: Add a new course** From your WordPress Admin Dashboard, navigate to **LearnDash LMS** > **Courses** and then click **+ Add New Course**. ### **Step 2: Add your title, description, and featured image** LearnDash will take you to the “Course Page” tab. You can think of this tab as the one where you create your course’s front-facing identity. Start by entering your course title—in my case, “*National Parks of Canada*”. Then add a course description. Course descriptions are very much like product descriptions; they are marketing copy that also explain to prospective learners what they’d be signing up for by enrolling. Lead with your one-sentence promise, followed by a few short paragraphs. Finally, add your course’s featured image. [](https://www.uncannyowl.com/wp-content/uploads/2026/07/national-parks-of-canada-course-featured-image.webp) ### **Step 3: Configure the course settings and save** Next, you’ll want to configure your course settings. The **Settings** tab is where you’ll determine how the course behaves: - **Course enrollment.** This is how learners get in. Out of the box, LearnDash gives you five options: open, free, buy now, recurring, and closed. Select the one that best suits how you plan on enrolling learners. For now, I’ve left mine set to the default which is “Free”. - **Display and content options.** This controls the look and feel of the course. - **Access settings.** Determines who can access the course and for how long. Determine whether the course has prerequisite requirements and the period of time for which new enrollees have access to the course or whether the course is only available for a specified time period. - **Completion awards.** This is where you set the certificate and whether or not and how many course completion points the course is worth. You can leave this blank for now as we haven’t yet built a certificate. - **Course navigation settings.** This determines whether the course enrollees must move through the material in a linear fashion, or if they can jump around. For most courses, linear progression makes the most sense. - **LearnDash course grip settings.** Determines the values that are displayed on the front-end of your site within the LearnDash course grid. Once you’ve configured your course settings, click **Save draft**. Every step that follows will build off of this course, so you’ve just laid the foundation. ## **Building your first lesson** A lesson is a major unit of content inside a course—one meaningful step in the learner’s journey. In my running Outdoorsman University example, the first lesson in the “National Parks of Canada” course is “Banff National Park”. I’ll walk through building this first lesson in full; after that, you’ll repeat the same pattern for each lesson in your plan. ### **Step 1: Add a new lesson** From your WordPress Admin Dashboard, navigate to **LearnDash LMS** > **Lessons** and then click **+ Add New Lesson**. ### **Step 2: Add your title and featured image** Just as with your course, you’ll want to name your lesson and possibly give it a featured image so you can always identify it. ### **Step 3: Add your lesson content** Use the standard WordPress block editor to build the lesson body—the same editor you’d use for any page or post. Add text, images, video embeds, and any other blocks your teaching calls for. This is where your actual content lives, so take your time here. [](https://www.uncannyowl.com/wp-content/uploads/2026/07/banff-national-park-lesson.webp) ### **Step 3: Associate the lesson with your course** Open the lesson’s **Settings** tab and scroll down to **Lesson Access Settings**. In the dropdown next to “Associated Course” select the course(s) that this lesson should be a part of. In my running example, that’s “*National Park of Canada*”. This is the step that tells LearnDash where the lesson belongs—miss it and your lesson floats unattached to any course. ### **Step 4: Publish the lesson** Once the content and course association(s) are set, click **Publish**. (Publishing the lesson is fine—learners still can’t see it until the course itself is published and they’re enrolled.) That’s the full pattern for a LearnDash lesson. Repeat these steps for each lesson in your course plan. If your course is anything like mine—48 lessons and counting—you’re probably wondering if there’s a better way to build it. And there is… *Looking for a faster way to create online courses? Build courses in WordPress using Uncanny Agent* *Instead of opening a blank editor over and over again, just tell Uncanny Agent, your AI assistant in WordPress:* *“Draft 48 lessons—one for each national park and national preserve in Canada—and set the associated course for each lesson to ‘National Parks of Canada’.”* *Agent will spin up the lessons for you in a fraction of the time.* [*Try Uncanny Agent for yourself >>>*](http://automatorplugin.com/pricing) ## **Add topics inside lessons** A topic is a sub-unit *inside* a lesson—a way to break a long lesson into shorter, more digestible learning sessions. Topics are optional. A short, focused lesson may not need any; a long one is far easier to work through when it’s split into a few topics. Use topics when a lesson is long enough that a learner would naturally want to break it across multiple sittings, or when a single lesson contains a few distinct sub-concepts you’d like to track completion on individually. ### **Step 1: Add a new topic** From your WordPress Admin Dashboard, navigate to **LearnDash LMS** > **Topics** and then click **+ Add New Topic**. ### **Step 2: Add content and associate it** Build the topic content in the block editor exactly as you did for the lesson. Then, under the topic’s **Settings** tab, set both its **Associated Course** and its **Associated Lesson**—this is the only real difference from building a lesson. The topic needs to know which lesson it lives under. [](https://www.uncannyowl.com/wp-content/uploads/2026/07/learndash-topic-associated-course-and-lesson.webp) ### **Step 3: Publish your topic** Once you’ve added your content and associated the topic with the right course(s) and lesson(s), click **Publish**. Topic configuration is identical to lesson configuration—only the parent association differs. Add as many topics under each lesson as your structure calls for, or skip topics entirely if your lessons are short enough to stand on their own. ## **Build your first quiz** A quiz is an assessment unit. In LearnDash you can attach quizzes to lessons, topics, or have them sit at the course level on their own. Quizzes reinforce learning, can gate progression (a learner has to pass before moving on), and—for some courses—feed into a grade or certificate. Building a quiz is a two-part job: first the quiz container, then the questions inside it. ### **Step 1: Create the quiz container** From your WordPress Admin Dashboard, navigate to **LearnDash LMS** > **Quizzes** and then click **+ Add New Quiz**. Give the quiz a title—for me, that’s “History of Banff National Park”. Under the **Settings** tab, set the **Associated Course** and, if it belongs to a specific lesson, its **Associated Lesson**. Configure the basics here too: passing score, whether learners can retake it, etc. ### **Step 2: Build your quiz** To start creating your quiz, navigate to the **Builder** tab and click **New Question**. LearnDash and other LMS plugins give you options for the kinds of questions that your quizzes can have. Select from: - Single choice (one right answer from a selection) - Multiple choice (one or more right answers from a selection) - “Free” choice - “Sorting” choice - “Matrix Sorting” choice - Assessment - Fill in the blank - Essay / Open answer [](https://www.uncannyowl.com/wp-content/uploads/2026/07/history-banff-national-park-quiz-question.webp) Add as many questions as your assessment calls for—typically 5 to 15 for a lesson-level quiz, more for a course-level final. Then create additional quizzes using the same container-then-questions pattern: one quiz per lesson plus a cumulative final, in our running example. **Save** the quiz once your questions are in. ## **Set up a completion certificate** A certificate gives your learners something tangible to walk away with—and, for some audiences, something to share on LinkedIn or submit for professional credit. Here’s how to create one and attach it to your course. ### **Step 1: Create the certificate** From your WordPress Admin Dashboard, navigate to **LearnDash LMS** > **Certificates** and then click **+ Add New Certificate**. ### **Step 2: Design it** Use the visual editor or the code editor to style your certificate. For a full walkthrough on designing certificates in LearnDash, [check out this detailed guide from Liquid Web](https://www.liquidweb.com/help-docs/software/learndash/certificate/create-certificate/#previewing_certificates). [](https://www.uncannyowl.com/wp-content/uploads/2026/07/certificate-of-completion-national-parks-of-canada.webp) ### **Step 3: Attach it to your course** Save the certificate, then go back to your course at **LearnDash LMS > Courses** and select the course that you just built. In the **Settings** tab, scroll down to **Completion Awards** and set the “Course Certificate” to the one you just created. [](https://www.uncannyowl.com/wp-content/uploads/2026/07/completion-awards-certificate.png) **Save** your course. Now learners who complete the course will now earn the certificate automatically. (Certificates can also be attached to individual quizzes, which is useful if you want to reward intermediate milestones as well as full completion.) ## **Set up enrollment** Enrollment is how a learner gets access to your course. LearnDash gives you several enrollment modes, and the right one depends entirely on your business model: - **Open:** anyone with the URL can enroll, no account required. - **Free:** requires a free account, but no payment. The default for genuinely free courses. Good for free lead-generation courses. - **Buy now:** a one-time purchase. Requires an integrated payment processor (Stripe, PayPal) or WooCommerce. - **Recurring:** a subscription. Same payment-integration requirements as “Buy now”. - **Closed:** manual enrollment only; you add learners yourself. Common for corporate and B2B training. ### **Step: Set your access mode** For this walkthrough, we’ll use **Free**, so you can publish and test the whole course without setting up payment plumbing first. Open your course settings, find **Access Mode**, select **Free**, and save. ## **Publish and test** You’ve built everything. It’s almost time to teach—but first, let’s pretend to be students. Open your course at **LearnDash LMS > Courses**, switch its status from **Draft** to **Published**. Now test it as a learner, not as an admin—this is the step most people skip and later regret: - Log out, or open an incognito/private window. - Create a test account on your site. - Enroll in the course. - Walk through a lesson, complete a topic, take a quiz, and confirm the certificate fires correctly on completion. Almost every new course creator catches at least one configuration issue during this test pass—a missing association, a quiz that won’t unlock, a certificate that doesn’t trigger. Far better to find it yourself than to hear about it from your first paying student. ## **A faster way: building courses with Uncanny Automator and Uncanny Agent** Up to this point, I’ve assumed that you’ve been clicking through every step of building an online course in WordPress with me. While it’s good to work your way through building courses manually to understand their structure, after a few lessons and topics, the process gets tedious. And time consuming. There is, thankfully, a faster path for course creators who’d rather focus more on content and less on clicking. That faster path involves using **Uncanny Agent**, the most capable AI assistant for WordPress sites.  **Uncanny Automator** is the #1 AI + automation plugin for WordPress. Using combinations of triggers and actions called *recipes*, Automator connects all of your favorite apps and plugins to execute workflows and automate repetitive tasks. For course creators, that means automating tasks like “when a learner enrolls in a course, add them to a **Mailchimp** list and tag them based on the course they signed up for”. **Uncanny Agent** is the AI assistant for WordPress that works alongside Automator’s recipes. Agent can build your recipes from plain text, complete tasks on your tasks, and surface your site data from simple questions. For course creators, that means you can build LearnDash courses, lessons, and topics through plain conversation instead of clicking through menus yourself. You can even give Agent your research and teaching materials and tell it to add the content to your courses, all from plain-language prompts. The click-by-click LearnDash build is straightforward, but it’s slow and tedious—my course had almost 50 lessons! Instead of trying to create all of those lessons myself or uploading a CSV and praying that it imports properly, I just asked Uncanny Agent to build the lessons for me. With those lessons built, I was able to simply click into them and start adding the content that I’m actually passionate about. You still review and refine everything; Agent drafts, you polish. But the time saved on setup is real. Three things Agent and Automator are especially good at during course creation: - **Scaffolding course structures from a brief.** *“Create a course with these six lessons and these quiz checkpoints”* → Agent does the clicks. - **Drafting first-pass content.** Lesson outlines, topic descriptions, quiz questions, certificate copy—Agent generates the starting material; you edit. - **Wiring up enrollment workflows.** *“When a new learner enrolls, add them to my CRM, post a message to the sitewide BuddyBoss activity channel, and create and email a unique coupon code to them three weeks after their enrollment for 25% off of the “National Parks of the World” course”*. Agent works with the Recipe Builder to create your automated workflow. [*Try Uncanny Automator Lite (free for life)*](https://wordpress.org/plugins/uncanny-automator/) *or get a* [*Pro license and start handing off work to Uncanny Agent >>>*](http://automatorplugin.com/pricing) ## **Teaching beyond the course** Up to this point, you’ve built a basic online course in WordPress. That’s enough to get you started. But I’m willing to bet my new certificate that you want to build more than just one course. And you want your courses to be as dynamic, flexible, and powerful as your teaching style. For that, you’ll need to extend the capabilities of LearnDash with plugins that enhance the experience for everyone: your learners, instructors, group leaders, and (not least of all) yourself! Here’s the shortlist of the best plugins to extend your WordPress LMS course capabilities, organized by who benefits and what changes for them. ### **For learners — a smoother experience** **[Uncanny Toolkit Pro for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/)** adds dozens of modules that close common LearnDash front-end gaps: a course dashboard, learner transcripts, login redirects, autocomplete features, enhanced course grids, and bulk certificate generation. **[Uncanny Groups for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/)** turns LearnDash groups (LearnDash’s term for a cohort of learners under a shared group leader) into real cohorts with peer identity, group-leader visibility, and group-only features including dedicated forums. ### **For instructors and admins — better visibility and control** **[Tin Canny Reporting for LearnDash](https://www.uncannyowl.com/downloads/tin-canny-reporting/)** delivers detailed learner analytics and supports SCORM (a standard format for eLearning content from authoring tools like Articulate Storyline or Adobe Captivate) and xAPI (the modern successor to SCORM, capable of tracking richer learner activity). If you need to know what’s going on inside your courses, this plugin is essential. **[Uncanny Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/)** tracks and awards continuing education credits (CEUs, CPDs, CLEs, CMEs, and others, depending on industry). If you teach in a regulated profession or need a robust learning record store (LRS) within WordPress, this is the piece that makes your course count. ### **For scaling to organizations** **[Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/)** also powers B2B sales. Sell seat-based licenses to organizations, give their admin a front-end management page, and let them manage their own learners without ever touching your WordPress admin. **[Uncanny Redemption Codes](https://www.uncannyowl.com/downloads/uncanny-codes/)** enables code-based bulk enrollment. Ideal for promotional campaigns, event giveaways, or distribution to organizations that handle their own provisioning. ### **For automating everything else** **[Uncanny Automator](https://automatorplugin.com/)** connects LearnDash to hundreds of other plugins and apps—Mailchimp, Stripe, Discord, Slack, Google Sheets, Asana, LinkedIn, OpenAI, and more. Automator’s deep integration with LMS plugins like LearnDash lets you even create automations based on quiz results. From enrollment to alumni, take the tedium out of managing your online courses with Uncanny Automator. ### **Get the LearnDash stack as a bundle** [The **All Access Pass**](https://www.uncannyowl.com/all-access-pass/) bundles every premium Uncanny Owl LearnDash plugin—Toolkit Pro, Uncanny Groups, Tin Canny, Uncanny CEUs, and Uncanny Codes—at a significant discount. (You’ll also get a special discount on Uncanny Automator.) It’s the natural choice once you know you want more than one. ## **Final thoughts** You’ve built a complete WordPress course from zero—LearnDash for the foundation, your own expertise for everything that matters. More importantly, you now know the build pattern: course, lesson, topic, quiz, certificate, enrollment. That pattern doesn’t change. You can repeat it for every course you ever build on this stack. One honest thing to carry with you: your first version isn’t the version your students will remember. Course creation is iterative. Ship it, watch how real learners move through it, see where they get stuck or drop off, and refine. The stack you’ve just built is made for exactly that kind of iteration and tools like Uncanny Agent make each round of changes faster than the last. So don’t wait for perfection: build your first online course in WordPress today and let your students teach you the rest. ## **Frequently Asked Questions** **How can I build online courses with AI?** AI is a real shortcut for the structural work of course building—scaffolding outlines, drafting lessons and topics, generating quiz questions, and writing learner-facing copy. The most direct path on WordPress is **Uncanny Agent**, an AI assistant for WordPress powered by **Uncanny Automator**. Agent completes tasks alongside your automations—building LearnDash courses from prompts, drafting content, generating quiz questions, and wiring up enrollment workflows. You still review and polish the output, but Agent handles the click-heavy scaffolding so you can focus on the teaching. **How long does it take to build an online course on WordPress?** The technical build—the part this post covers—usually takes a few hours once your plan is solid (less if you scaffold it with Agent). The slow part is creating the content itself: writing lessons, recording video, and designing quizzes that actually assess what you intend. Most new course creators spend roughly 80% of their time on content and 20% on the platform. Plan accordingly. **Can I switch LearnDash for a different WordPress LMS plugin later?** Usually yes, with some effort. Most LMS plugins share the same core concepts (courses, lessons, quizzes), but migrating between them means remapping content and re-enrolling learners. Pick the plugin you intend to stay on for at least the next two to three years. For most WordPress course creators that’s LearnDash, but explore alternatives if you have specific requirements it doesn’t serve well. **Can I run my course as a free trial, then convert students to paid?** Yes. The simplest pattern is a short, free “trial course” that teaches enough to be genuinely useful and ends with a clear invitation to enroll in the full paid course. LearnDash’s enrollment modes support this directly. **How do I make my course look and feel professional?** Three things matter most: a clean, well-maintained WordPress theme; consistent branding across your lessons, quizzes, and certificate; and a polished learner-facing front end. For that last one, **Uncanny Toolkit Pro** is the most common upgrade. Toolkit Pro provides professional features like a Course Dashboard, autocompletion options for lessons and topics, enhanced grids, and learner transcripts. Even the free version of Uncanny Toolkit adds features like login redirect to improve the user experience. Those are the features that make your courses feel like they are part of a real LMS rather than a WordPress site with courses bolted on. **I teach a regulated profession (healthcare, legal, real estate, etc.)—does LearnDash support continuing education credits?** LearnDash doesn’t handle continuing education credits on its own. **Uncanny Continuing Education Credits** is the standard add-on for awarding and tracking CEUs, CPDs, CLEs, CMEs and the like, with printable certificates and credit-tracking reports that map to common compliance requirements. **Categories:** eLearning --- ### [10 Years of the Uncanny Toolkit: A Decade of LearnDash Innovation](https://www.uncannyowl.com/10-years-of-the-uncanny-toolkit-a-decade-of-learndash-innovation/) **Published:** June 22, 2026 **Author:** Ken **Content:** Ten years ago, we [introduced the Uncanny LearnDash Toolkit](https://www.uncannyowl.com/uncanny-learndash-toolkit/) to the WordPress.org repository — a small, free collection of modules designed to close the gaps in LearnDash and give course creators a better learner experience out of the box. We had no idea what it would grow into. A decade later, Toolkit is the #1 LearnDash addon, trusted by more than 20,000 businesses, and it sits at the center of an [eLearning plugin suite](https://www.uncannyowl.com/all-access-pass/ "All Access Pass") serving organizations around the world. To celebrate this anniversary, we’re walking back through the most important moments of the last decade — the moments in which you helped shape not just our product line, but the broader eLearning space in WordPress. (Plus, we’ve got a sneak preview of what the next 10 years could look like.) Grab a coffee. This is going to be a fun trip. --- ## Year 1-2 (2016-2017): Laying the foundation This is where our story started; with a free plugin, a paid upgrade, and the first WordPress plugin to bring real xAPI and SCORM support to LearnDash. - [**A free toolkit arrives for LearnDash**](https://www.uncannyowl.com/uncanny-learndash-toolkit/) — Uncanny Toolkit launches on WordPress.org with a collection of essential enhancements: front-end login, log-in/log-out menu links, course resume, breadcrumbs, conditional content, and more. An immediate and polished upgrade for any LearnDash site, no code required.  - [**A premium toolkit launches for serious LearnDash sites**](https://www.uncannyowl.com/uncanny-learndash-toolkit-pro/) — Uncanny Toolkit Pro debuts with advanced modules for organizations that need more than what the free edition offered. This was the start of a paid product line built entirely on customer feedback—your feedback. - [**The first xAPI Learning Record Store for WordPress**](https://www.uncannyowl.com/tin-can-lrs-learndash-report-toolkit/) — Tin Canny Reporting launches with a native Tin Can (xAPI) LRS, drill-down learner reports, and support for Storyline, Captivate, and H5P content. WordPress gained a real enterprise-grade eLearning reporting platform for the first time. - [**Native SCORM support for LearnDash**](https://www.uncannyowl.com/introducing-native-scorm-support-wordpress/) — Tin Canny expands beyond xAPI to handle SCORM content natively. Corporate training teams could finally deliver their existing authoring-tool output inside a WordPress LMS. - [**Bulk user import with course enrollment**](https://www.uncannyowl.com/import-learndash-users/) — Import hundreds or thousands of learners from a CSV file and auto-enroll them in courses and groups or import user info to custom user fields. A feature that has been a lifesaver for many organizations that need to manage bulk enrollments. --- ## Year 3-4 (2018-2019): The suite takes shape–and Uncanny Automator is born With the foundation in place, we expanded into three new product categories — B2B group management, code-based enrollment, and compliance credits — and modernized the whole suite for Gutenberg. - [**A B2B management layer for LearnDash groups**](https://www.uncannyowl.com/learndash-group-management/) — Uncanny Groups launches with front-end group management, seat tracking, and group leader reports. This turned LearnDash into a real B2B training platform and opened up selling courses to organizations rather than just individuals.  - [**Code-based self-enrollment for LearnDash**](https://www.uncannyowl.com/uncanny-learndash-codes/) — Uncanny Codes launches with generated redemption codes that enroll users in courses or groups. Delivered voucher programs, bulk sales, reseller distribution, promotional course promo codes and more. - [**A dedicated plugin for CE credit tracking**](https://www.uncannyowl.com/continuing-education-credits-for-learndash/) — Uncanny Continuing Education Credits launches, with credit assignment per course, compliance reporting, and CE certificates. Built for professional associations and regulated industries with input from our growing user base. - [**Subscription-based group licensing**](https://www.uncannyowl.com/uncanny-learndash-groups-part-2/) — Uncanny Groups introduces recurring group licenses via WooCommerce Subscriptions. Training companies could now sell ongoing team access rather than only one-time purchases. - [**Uncanny Automator launches**](https://www.uncannyowl.com/uncanny-automator-is-here/) — After nine months of development, Uncanny Automator, the first Automation plugin for WordPress, shipped with 65 triggers and actions across 15 plugins, plus Zapier webhook support. --- ## Year 5-6 (2020-2021): Scale, polish, and Codes expands By year five, our suite was running on serious production sites. This chapter is about making it faster, more modern, and deeply connected — including one of the most consequential changes we’ve made: tying Codes to Uncanny Automator. - [**A modern front-end login experience**](https://www.uncannyowl.com/announcing-the-uncanny-learndash-toolkit-version-3-0/) — Uncanny Toolkit reimagined Frontend Login with reCAPTCHA support, modern styling, AJAX submission, modal support, and a Gutenberg block. Learners get a faster, more polished first touchpoint. - [**Sell redemption codes through WooCommerce**](https://www.uncannyowl.com/uncanny-codes-4-0-for-wordpress/) — Uncanny Codes added a dedicated WooCommerce product type for selling code batches directly to customers – the first plugin to enable the sale of redeemable codes on WordPress. - [**Trigger Automator recipes from a code redemption**](https://www.uncannyowl.com/uncanny-codes-4-0-for-wordpress/) — Uncanny Codes was also extended to connect deeply to Uncanny Automator, so a code redemption can fire any combination of actions across hundreds of integrated apps. Uncanny Codes evolved from a LearnDash enrollment tool into a general-purpose access-granting engine. - [**Award CE credits for virtually anything**](https://www.uncannyowl.com/award-ceu-credits-for-anything/) — CEUs added the ability to manually enter CE credits for anything – making it a much more versatile solution. It was also integrated with Uncanny Automator, so credits could be automatically awarded for submitting a form, earning a badge, making a donation, or attending a live event — not just course completion. CE tracking expanded well beyond LearnDash. - [**Full xAPI and SCORM dispatch file support**](https://www.uncannyowl.com/expanded-scorm-and-xapi-tin-can-support-for-learndash/) — Tin Canny was updated to handle virtually any standards-compliant eLearning module, including dispatch files. LearnDash became a drop-in destination for content produced by any major authoring tool. --- ## Year 7-8 (2022-2023): Certificates, commerce, and compliance Our suite matured into enterprise territory. This chapter is defined by bulk operations, multi-license purchases, and compliance records that survive real-world course retakes. - [**Tin Canny gets Automated**](https://automatorplugin.com/tin-canny-ifttt-integrately-webhooks-and-more/) — Uncanny Automator gave Tin Canny its own integration with a trigger that fires when a learner hits a specific score on an interactive module (Storyline, Rise, Captivate, iSpring, and more). Module scores could now drive any downstream action — unlocking remedial or advanced content, awarding credits, or firing completions in another platform. - [**Automated LearnDash Group Management arrives**](https://automatorplugin.com/knowledge-base/integration/uncanny-groups/) — Uncanny Groups also got its own Automator integration with triggers for group creation, group key redemption, and seat changes, plus actions to create groups and add or remove seats. - [**Preserve CE records across course resets**](https://www.uncannyowl.com/uncanny-ceus-archive-quiz-results/) — CEUs was updated to keep historical credit records intact when learners reset or retake courses. A compliance-critical change for associations running annual recertification programs. - [**Bulk certificate downloads**](https://www.uncannyowl.com/toolkit-pro-4-0-generate-learndash-certificates-in-bulk/) — Toolkit Pro now let administrators download ZIPs of PDF certificates for entire groups, courses, or quizzes. Replaced what used to be a multi-hour manual export job with one click.  - [**Single-page LearnDash courses**](https://www.uncannyowl.com/single-page-learndash-courses-now-available/) — A free Toolkit module enabled single-page courses with no lessons or topics. Now a standard layout option used on thousands of sites for microlearning or SCORM/xAPI-powered courses. - [**Per-group topic drip scheduling**](https://www.uncannyowl.com/drip-learndash-topics-autocomplete-formidable-forms/) — On top of group-based lesson drip, Toolkit Pro added group-based topic dripping so different cohorts could get access to topics on different calendar dates. - [**Front-end learner transcripts for group leaders**](https://www.uncannyowl.com/transcripts-for-group-leaders-live-timer/) — Toolkit Pro gave group leaders direct access to printable transcripts for everyone in their group, without handing them WordPress admin access. A key B2B reporting unlock. --- ## Year 9-10 (2024-2026) and beyond: Foundations for the next decade The most recent chapter is about rebuilding the oldest parts of the suite so they’re ready for the next ten years — new reporting architectures, new admin UIs, and new commercial flexibility. - [**A full core rework of Tin Canny’s reporting engine**](https://www.uncannyowl.com/tin-canny-reporting-5-0-a-major-milestone-in-learndash-reporting/) — Tin Canny got a reporting core rebuilt from the ground up with all major libraries updated. The biggest Tin Canny release since native SCORM support arrived, and the foundation for the next generation of reporting features. - [**A new standardized admin UI**](https://www.uncannyowl.com/uncanny-redemption-codes-5-0-enhanced-flexibility-performance-and-a-visual-overhaul/) — Uncanny Redemption Codes debuted a new admin interface design that will roll out across the full Uncanny Owl suite. A consistent, modern user experience across every plugin.  - [**Shareable public transcript links**](https://www.uncannyowl.com/whats-new-in-uncanny-toolkit-and-toolkit-pro/) — Uncanny Toolkit Pro introduced shareable learner transcript URLs, so employers or licensing bodies could easily verify course completion without granting site access. - [**Course timer with automatic logout**](https://www.uncannyowl.com/whats-new-in-uncanny-toolkit-and-toolkit-pro/) — The Simple Course Timer now logged inactive learners out automatically, protecting accurate time-on-task tracking for compliance training. --- ## Ten years in Looking back at this list, the thing that stands out isn’t any single release. It’s the pattern: every major feature in Toolkit, Toolkit Pro, Tin Canny, Groups, Codes, and CEUs came from real customer feedback — requests that grew into modules, modules that grew into plugins, plugins that grew into a platform. A lot of what’s now taken for granted in LearnDash started as a feature request from someone running a training business. To everyone who’s built a course, run a compliance program, launched a training business, or filed a feature request on our site: thank you. Our plugin suite is what it is because of you. Here’s to the next ten years. --- *The free Uncanny Toolkit remains available on* [*WordPress.org*](https://wordpress.org/plugins/uncanny-learndash-toolkit/)*. For Uncanny Toolkit Pro and the rest of the suite, see the* [*All Access Pass*](https://www.uncannyowl.com/all-access-pass/)*.* **Categories:** Uncategorized --- ### [How to Add a Community to Your Online Courses in WordPress (Without Switching Platforms)](https://www.uncannyowl.com/how-to-add-a-community-to-your-online-courses-in-wordpress-without-switching-platforms/) **Published:** June 5, 2026 **Author:** Brendan Da Costa **Content:** Adding community to your online courses is a proven way to increase engagement, build trust, and improve completion rates. Students who feel connected to other learners—and to someone actively facilitating the experience—show up more often, finish what they started, and come back for more. The harder question is how to deliver that on WordPress. **LearnDash** and other LMS plugins like **Tutor LMS** or **LearnPress** handle the actual content delivery—courses, lessons, quizzes, certificates, basic group structure. But they aren’t community platforms. So how do you add community elements like forums, chats, webinars, and the like to your LMS? And how do you get all of those pieces to stay in sync as enrollments shift? The good news is that WordPress has lots of plugins designed to help you build a thriving community around your online courses. You don’t have to migrate to Circle, Skool, or Mighty Networks to build an engaging digital campus life. In this article, I’ll show you how **Uncanny Groups** for LearnDash and **Uncanny Automator** work together to help you build the community your learners have been asking for.*Want to start building your online course community right now?* [***Get Uncanny Groups***](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/)***and*** [***download Uncanny Automator***](https://wordpress.org/plugins/uncanny-automator/) ***for free >>>*** ## **The two components of online course communities** No two communities are the same—but the **infrastructure** that supports them and the **experience** that they deliver usually are. First, the infrastructure of your LMS—whether that’s LearnDash, LearnPress, or another plugin—needs to reflect the community that you want to build. This controls everything from how and where learners enroll in courses, to what they can see and interact with. LearnDash has some limited group functionality, but it’s a far cry from the full scaffolding you need to support an online community. Next, you need the experience that sits on top of that infrastructure—the actual place your members come together and talk to each other, whether on your WordPress site or in a separate community platform.In short, **Uncanny Groups** handles the “infrastructure” side of things, creating the framework for your community on the back-end and operational side of your site. What you learners experience—the seamless sync between enrollments and platforms like BuddyBoss—is handled by **Uncanny Automator**. ## **Three types of community to consider before you build** As I said before, no two communities are the same. Some online course communities revolve around webinars. Others center around lively forums. A growing number of them resemble full-fledged social platforms with profiles, chats, feeds, and more. Broadly speaking, you can break these down into three types of communities. ### **Cohorts and Learning Groups** These types of communities consist of groups of learners moving through the same material together—a January 2026 cohort working through your flagship program, the Acme Corp leadership team rolling out compliance training, for example. Cohorts matter most when the people buying course access are already buying in groups. These are usually B2B sales where one company purchases batches of seats for employees, or firms in regulated industries like healthcare and financial services. In all of those cases, the cohort isn’t just a roster of names—it’s the unit of sale and the unit of operation. ### **Forums and Discussions** Forums provide learners with a platform where they can come together to discuss course material, learning experiences, and share insights. Someone gets stuck on a specific lesson, and another learner who got past that same point last week answers the question. Forums and discussion boards are what many course creators and eLearning admins rely on to turn static course material into interactive learning experiences. ### **Membership Hubs** Membership hubs (BuddyBoss, PeepSo, etc.) create the social space your learners spend time in beyond any one course. They provide real-time chat, member profiles, activity feeds, and a brand presence that lives between your course offerings. Membership hubs are what most people have in mind when they say they want to build “a community” around their work, not just around one program. The elements of each type of online course community that you want to implement on your own site will determine which tools you need and how you use them. ## **Building cohorts and learning groups with** [**Uncanny Groups**](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) **for LearnDash** Cohorts are where most online course communities start. LearnDash has a built-in concept of a group (its term for a cohort of learners sharing access to a set of courses), but the built-in functionality is bare-bones. You can create a group, assign courses, and add learners by hand. That’s about where it ends. Uncanny Groups for LearnDash extends that starting point into a full cohort management system you can actually sell from, operate in, and report on. [](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) ### **Group leaders and front-end management** A group leader—LearnDash’s term for a designated cohort facilitator—is the person who actually runs the cohort day-to-day. With Uncanny Groups, group leaders work from a front-end dashboard on your site, not from WordPress admin. They can add and remove learners, view individual and group progress, grade assignments, and pull reports on their cohort’s activity. [](https://www.uncannyowl.com/wp-content/uploads/2026/06/uncanny-groups-front-end-report-scaled.webp) For a B2B sale, this is the feature that lets your client manage their own people. A training coordinator at Acme Corp logs in, sees who’s stalled, and follows up directly. You’re not in the middle of it. For a compliance program, the same dashboard is what lets a designated training officer prove who completed what and when, without asking you for CSV exports every quarter. ### **Group registration and B2B licensing** Group registration allows communities within your broader platform to stick together from the beginning. Uncanny Groups adds pre-configured group licenses through WooCommerce, allowing group leaders to purchase seats in bulk. Group leaders then download enrollment keys for their cohort and distribute them to learners, who self-register and redeem the key on your registration form. ### **Native BuddyBoss group sync** If your community ends up living on BuddyBoss, Uncanny Groups syncs LearnDash group membership to BuddyBoss social groups natively. When a learner joins a LearnDash group, they’re added to the corresponding BuddyBoss social group automatically. When they leave, they’re removed. If you’re already running a BuddyBoss community alongside LearnDash, this is the missing piece that connects learning to social engagement. Cohorts stay in sync without you doing anything. ## **Adding forums and discussions** Cohorts give your community a shape. Forums and discussions give it a voice. The lightweight option is to use **bbPress forums** (it’s [free to download from the WordPress.org repository](http://wordpress.org), by the way), which Uncanny Groups can attach directly to a LearnDash group. When you turn on group forums, every member of that cohort gets access to a private discussion space tied to their courses. New members are added automatically when their seat is assigned. When they’re removed from the group, they lose access to the forum too. No second user database, no second login. [](https://www.uncannyowl.com/wp-content/uploads/2026/06/uncanny-groups-bbpress-forums-scaled.webp) For organizations that want richer conversation than bbPress provides—threaded replies, mentions, reactions, media uploads—**BuddyBoss** is usually the next step up. BuddyBoss adds full social-network functionality to WordPress: profiles, activity feeds, real-time notifications, private messaging, and group-level forums that look and feel closer to Facebook Groups than a traditional bulletin board. [](https://www.uncannyowl.com/wp-content/uploads/2026/06/buddyboss-homepage.webp) ## **Building membership hubs with Uncanny Automator** Cohorts and forums are scoped to a specific course or program. Membership hubs are evergreen—the space members spend time in for as long as they’re members, regardless of which course they’re working through this month. A membership hub usually lives on a BuddyBoss social group, a Discord server, a Slack workspace, or something similar. The challenge isn’t picking the platform—it’s keeping membership accurate and the activity meaningful as people move through your courses. That’s where [**Uncanny Automator**](https://www.automatorplugin.com) earns its place in the stack. [](https://www.uncannyowl.com/wp-content/uploads/2026/06/automator-homepage-tagline.gif) Automator is the experience-layer connector. It sits between LearnDash and your community platform of choice and uses no-code recipes (i.e., automations) to wire them together. A few examples of what that looks like in practice: - **Auto-enroll new members in your hub.** When a learner is added to a LearnDash group (or purchases a course, completes onboarding, or submits a registration form), Automator adds them to the right BuddyBoss group, Discord channel, or Slack workspace in the same step. [](https://www.uncannyowl.com/wp-content/uploads/2026/06/add-learndash-user-to-slack-channel.webp) - **Promote learners as they progress.** When a member completes a foundational course, Automator can move them into an “alumni” group, set the user’s Xprofile data in BuddyBoss and tag them as an alumni in your CRM. - **Celebrate milestones in the feed.** When someone passes a certification quiz or earns a certificate, Automator can post a congratulatory update to the activity feed, mentioning the learner—turning private achievements into community moments. - **Re-engage quiet members.** Use a scheduled recipe to contact learners who have fallen behind and send a nudge to the leader’s Slack channel, or email them a relevant new lesson. - **Remove access cleanly.** When a group license expires, Automator can remove the user from BuddyBoss groups, revoke their Discord access, and tag them in your CRM as a re-engagement target—all in one recipe. Automator integrates natively with **BuddyBoss**, **BuddyPress**, **bbPress**, **PeepSo**, **wpForo**, **Discord**, **Slack**, **Telegram**, and **WhatsApp**, alongside hundreds other WordPress and cloud apps. If the community platform has a way in, Automator usually has a recipe for it. ## **How your online course community actually works** If you’re building a community for your online courses with all three elements—cohorts, forums, and a membership hub—the stack ends up looking like this: - **LearnDash** delivers courses, lessons, quizzes, and certificates. - **Uncanny Groups for LearnDash** turns those courses into managed cohorts, with group leaders, B2B licensing, and other group management tools. - **bbPress** forum sync that powers cohort-level discussion. - **BuddyBoss** (or your social platform of choice) hosts the evergreen membership experience. - **Uncanny Automator** keeps all of it in sync—enrolling, promoting, removing, and notifying members based on what they do in their courses. You don’t have to build all three at once. Most of the LearnDash sites we work with start with cohorts and group forums, then add a membership hub later once they have enough members to make it worthwhile. The point is that nothing here requires leaving WordPress. The same admin, the same user database, the same hosting, the same login—just more capability layered on top. *Want to see how Uncanny Owl addons and plugins improve your WordPress community?* [***Try it out live on our demo site >>>***](https://learndash.uncannyowl.com/) ## **A note on hosted alternatives** It’s fair to ask: why not just move to Kajabi, Teachable, Thinkific, or Mighty Networks, which bundle community features in the box? If a hosted platform fits your needs, that’s a legitimate choice. The tradeoff is the one you already know—you rent your platform instead of owning it, your data and members live inside their walls, your pricing scales with the number of users (or arbitrarily based on their roadmap), and your customizations are limited to what they expose. For creators and organizations that want full control over the learning experience, the member data, the integrations, and the long-term cost curve, building on WordPress with LearnDash and the Uncanny stack remains the more durable path. You’re not just adding community to your courses—you’re keeping the keys to your digital castle. ## **Bringing it together** Adding community to your online courses doesn’t have to mean migrating off WordPress, learning a new platform, or paying per-seat for software you’ll outgrow. The pieces already exist in the LearnDash ecosystem. [**Uncanny Groups**](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) gives you the cohort infrastructure and group forums. **BuddyBoss** (or bbPress, for lighter needs) gives you the social experience. **Uncanny Automator** connects everything together so membership, progress, and engagement stay in sync without anyone manually moving users from list to list. Or, if you already know you want the whole stack, the **All Access Pass** bundles Uncanny Groups with Tin Canny Reporting, Uncanny Toolkit Pro, CEUs, and Codes at a single annual price—along with a discount on Uncanny Automator to bring it all together. [**Get the All Access Pass >>>**](https://www.uncannyowl.com/all-access-pass/) ## **Frequently Asked Questions** **Do I need BuddyBoss to add community features to LearnDash?** No. If your needs are limited to per-cohort discussion, the bbPress forums integration in Uncanny Groups is enough. bbPress forums are free, lightweight, and tied directly to LearnDash group membership through Uncanny Groups. BuddyBoss makes sense when you want activity feeds, private messaging, member profiles, and a richer social experience on top of the cohort layer. **Can I use Uncanny Automator with a community platform that isn’t BuddyBoss?** Yes. Automator integrates with BuddyPress, bbPress, PeepSo, wpForo, Discord, Slack, Telegram, and WhatsApp natively, plus anything you can reach with a webhook. The same recipe patterns work across platforms—you’re just swapping out the action. **Do cohorts in Uncanny Groups have to be tied to a paid product?** No. You can create groups manually as an administrator and add learners directly, or sell group licenses through WooCommerce as one-time products or subscriptions. You can even [let Group Leaders create their own groups](https://www.uncannyowl.com/knowledge-base/front-end-learndash-group-creation/), if that’s your desired workflow. Cohorts work the same way regardless of how members got into them. **What’s the difference between a LearnDash group and a BuddyBoss group?** A LearnDash group is a learning unit—it controls which learners have access to which courses. A BuddyBoss group is a social unit—it controls who can post in a feed, see a forum, and message each other. Uncanny Groups’ BuddyBoss sync keeps the two aligned automatically, so adding someone to a LearnDash group adds them to the matching BuddyBoss group in the same step. **Can group leaders manage the community side too, not just the course side?** Group leaders manage their cohort from the front-end Group Management page that Uncanny Groups installs—adding and removing learners, viewing progress, grading assignments, and downloading reports. Once those members are synced into BuddyBoss, the group leader can also act as a BuddyBoss group organizer if you give them that role, letting them moderate discussions and post announcements from the same login. **Will this work if I’m using Tutor LMS or LearnPress instead of LearnDash?** Uncanny Groups is LearnDash-specific. Uncanny Automator, however, integrates with LearnDash, Tutor LMS, LearnPress, LifterLMS, MasterStudy LMS, and WP Courseware, so you can still wire course events to a community platform—you’d just lose the native cohort infrastructure Uncanny Groups provides. **Categories:** Uncanny Groups --- ### [What's New in Uncanny Toolkit and Toolkit Pro](https://www.uncannyowl.com/whats-new-in-uncanny-toolkit-and-toolkit-pro/) **Published:** April 10, 2026 **Author:** Ken **Content:** Whether you’re building courses for your own audience or managing LearnDash sites for clients, the tools you rely on every day should keep getting better. Over the past year, we’ve shipped meaningful updates to both [Uncanny Toolkit](https://en-ca.wordpress.org/plugins/uncanny-learndash-toolkit/) and [Uncanny Toolkit Pro for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/ "Uncanny LearnDash Toolkit Pro"), from a completely refreshed admin experience and a modern login form designer to shareable learner transcripts and smarter CSV imports. Here’s a look at what’s changed and how it helps you and your learners. --- ## [](#a-fresh-admin-experience-across-the-board)A Fresh Admin Experience The first thing you’ll notice after updating is that the admin interface looks different — and that’s intentional. Both Toolkit and Toolkit Pro now share a redesigned, unified admin UI with updated Uncanny Owl branding. Settings pages are cleaner, navigation is more consistent, and everything feels more polished. This isn’t just cosmetic; it’s part of a user interface overhaul for all of our plugins. A consistent interface across all Uncanny Owl plugins means less time figuring out where settings live and more time getting things done. ## [](#a-modern-login-form-your-students-will-actually-enjoy)A Modern Login Form The Front End Login module in Uncanny Toolkit has always been one of our most popular free features. It lets you replace the default WordPress login with something that actually fits your site. Now it’s even better. The new **Modern theme** gives you a redesigned login form with built-in color customization. Pick colors that match your brand, and the form handles the rest. No CSS overrides, no child theme edits — just choose your colors and publish. We’ve also improved **two-factor authentication compatibility** with Melapress WP 2FA (two-factor authentication), switching to a REST API approach that’s more reliable and avoids conflicts. If you’ve been hesitant to add 2FA to your front-end login, now’s a great time to revisit it. ## [](#shareable-learner-transcripts-toolkit-pro)Shareable Learner Transcripts (Toolkit Pro) This one has been a popular request. The Learner Transcript module in Toolkit Pro now supports **public transcript access with shareable links**. Your learners can generate a link to their transcript and share it with an employer, a licensing board, or on LinkedIn with a single click using the **Share** button. For organizations running certification or compliance training, this is a practical way for learners to prove course completion without requiring admin involvement. For course creators, it adds real marketing value: learners can showcase what they’ve accomplished. ## [](#smarter-csv-imports-toolkit-pro)Smarter CSV Imports (Toolkit Pro) If you’ve ever imported users via CSV and hit formatting issues because your spreadsheet tool exported with semicolons instead of commas, you’ll appreciate this update. The **Import Users** module now supports **multiple delimiters**: comma, semicolon, tab, and pipe with **automatic detection**. Upload your CSV and Toolkit Pro figures out the format. No more reformatting files or troubleshooting failed imports. ## [](#simple-course-timer-logout-and-redirect-on-expiry-toolkit-pro)Simple Course Timer: Logout and Redirect on Expiry (Toolkit Pro) The Simple Course Timer module now includes the option to **automatically log out learners and redirect them when their timer expires**. This is particularly useful for timed assessments, proctored exams, or any scenario where you need to enforce strict time limits and ensure learners can’t continue working after time is up. ## [](#under-the-hood-developer-improvements)Under the Hood: Developer Improvements For developers building custom LearnDash solutions, we’ve added several hooks and filters across both plugins: - **`login_form` action hook** in the Front End Login templates making it easier to extend the login form with custom fields or integrations - **`uo_pro_transcript_cell_$key` filter** in the Transcript module lets you make course titles linkable or customize individual transcript cells - **Group Registration action hooks** for adding custom fields to signup forms - **WordPress 6.8+ compatibility** improvements across Toolkit Pro ## [](#bug-fixes-and-stability)Bug Fixes and Stability Every release also includes fixes that make the plugins more reliable: - Front End Login password fields now work correctly on iPhone - Autocomplete Lessons and Topics handles completion processing more reliably - Course Dashboard category IDs work properly in the Gutenberg block - Email Course Certificates uses dynamic paths instead of hardcoded ones - Gravity Forms integration hook priority conflicts resolved - Various PHP warning and deprecation fixes --- ## [](#try-it-out)Try It Out All of these updates are available now. If you’re already running Uncanny Toolkit or Toolkit Pro, update to the latest version to get everything listed above. If you’re using the free Toolkit and want access to shareable transcripts, smarter imports, and the course timer [check out Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/ "Uncanny LearnDash Toolkit Pro") or grab the [All Access Pass](https://www.uncannyowl.com/all-access-pass/) to get our full plugin suite at the best value. Have questions about any of these features? Our [knowledge base](https://www.uncannyowl.com/knowledge-base/) has detailed documentation, and our support team is always happy to help. **Categories:** Uncategorized --- ### [WordPress LMS Showdown: Sensei vs. LearnDash](https://www.uncannyowl.com/wordpress-lms-showdown-sensei-vs-learndash/) **Published:** August 21, 2014 **Author:** Ryan Moore **Content:** I recently decided to build a new [LMS demo site](https://sensei.uncannycloud.com) with [WooThemes Sensei](https://www.woothemes.com/products/sensei/), which gave me the opportunity to spend a lot of time setting Sensei up and integrated it into an existing site for this review. Since most of [Uncanny Owl’s](https://www.uncannyowl.com) platform consulting work involves [LearnDash](https://www.uncannyowl.com/share/learndash/), it was great to explore a different approach to a WordPress LMS solution. In this quick review I’ll discuss some of what I really liked about Sensei (compared to LearnDash) and where I have concerns about using the plugin to deliver training. First, some history. Uncanny Owl started working with [WordPress LMS products](https://learnpresslms.com/) just over a year ago. At that time we did a very comprehensive internal review of what was available and settled on the one we platform we thought was best—LearnDash. We actually purchased a copy of Sensei to try over a year ago, used it for a week, and then asked for a refund after finding it couldn’t deliver what we needed. A lot has changed over the past year, however, and our excitement about some of the new Sensei features encouraged us to see how far they’ve come. Both Sensei and LearnDash do a great job of doing what they need to do: structuring courses and lessons, tracking learning progress and delivering a good user experience. This review is focused on the differences between the products and what did and didn’t work for me as a WordPress user extending my site with an LMS plugin. ### What I Like About Sensei *Reporting*. The first thing I checked out after installing Sensei (and its associated free plugins) was the admin interface, and it was great to see reporting at the top. Sensei gave me a good overview of my course content and enrolled users, and I loved being able to drill down to see more detail. This is a lot easier to work with than the CSV export that LearnDash produces that includes very limited information. Having said that, I don’t like how Sensei scores things. More on that later. *Messaging*. I really like that Sensei includes more notification types, especially compared to LearnDash (where reporting is limited). It’s also nice to see private messaging that doesn’t require another plugin and is built around facilitated programs. Having said that, Sensei does go a bit overboard with notifications. Getting an email every time a lesson was completed was painful. I just want them for quizzes! (Sensei quizzes have to be included in lessons, which may be part of why emails go out for all lessons.) *Sharing*. It’s great to have social sharing available for learning programs and to be able to see and retrieve certificates easily. These things are much easier to set up with Sensei than LearnDash. *Certificates—for some things*. Speaking of certificates, Sensei has a much better way to design certificates than LearnDash. Getting text elements laid out correctly in LearnDash is painful, while Sensei doesn’t required you to tweak HTML and CSS until things are just right. It’s also nice to see that certificates are available on course completion rather than having to be associated with quizzes. (Of course, I’d rather Sensei also make them available for quizzes.) ### What I Didn’t Like *Cost*. An unlimited license for LearnDash is $79. Sensei starts at $149 for 1 site and goes up to $299 to use on 25 sites. But it doesn’t stop there. If I want to sell access to courses with recurring subscriptions, the solution suggested by WooThemes requires almost $300 in additional plugins. LearnDash includes integrations with free membership plugins. Want BadgeOS for gamification? With LearnDash the integration is free, with Sensei it’s paid. Given the trouble I had getting Sensei working with our third-party theme, picking up a WooThemes WordPress theme is recommended and another expense. The extra costs really add up. [](https://www.uncannyowl.com/wp-content/uploads/2014/08/The_page_you_were_looking_for_doesn_t_exist_–_Help_Desk.png)My WooThemes Support Ticket*Support*. LearnDash has a fantastic support site. There’s a very active user community with lots of solutions and user-contributed content; there’s also comprehensive documentation with screencasts. When I post in the forum or send in a support request, I generally hear back the same day. Sensei? There’s a much smaller forum. Documentation is rough and incomplete. (A quick example: out of the box my system emails were broken because font size is 350% and line height is 100%, so wrapping is a mess. [This page](https://docs.woothemes.com/document/sensei-email-notifications/) talks about customizing emails and then links to a page for more info, but that page that doesn’t even mention emails. The guidance about changing code to display sidebars properly was also incorrect for my theme.) And as for support, well, it’s really lacking. I’m still waiting on a reply to some followup questions that I submitted over a week ago. When I click the link to the ticket in my email, I see the page above. I get the feeling that means my questions won’t get answered. *Learner Workflow*. LearnDash handles lessons the way I’d expect. If there’s no quiz or assignment, click a button to indicate completion and move to the next lesson. If there’s a quiz, advance after passing the quiz. With Sensei passing a lesson is really celebrated. You click a button, just like LearnDash, but this time there’s a big message congratulating you for finishing a lesson—which might have been as basic as reading a paragraph. Then you’re encouraged to share it on social media (I want this in some places, just not every lesson). Then you have to hunt around beneath those things to figure out how to manually navigate to the next lesson. [](https://www.uncannyowl.com/wp-content/uploads/2014/08/Sensei_Demo_LMS___Lesson_with_Text_and_Images_-_Sensei_Demo_LMS.png)Lots of customization needed*Designed for WooThemes*. Setting up LearnDash doesn’t generally break sites. Setting up Sensei broke my site. First my sidebar was gone, then it was beneath the rest of my content, and I ended up spending hours on PHP and CSS changes to get the look & feel I wanted restored. WooThemes has documentation for the sidebar issue, but it suggests copying some div containers from a theme PHP file which, at least in my case, turned out to not include enough containers. I don’t like the forced title at the top of every page either, and why does Sensei want to make its widgets to look so different than the ones I already have? *Less Intuitive*. I’ve used a lot of WordPress plugins, including some LMS ones, and I start using them by exploring rather than reading a manual. That led to a lot of frustration with Sensei. I wanted a new certificate, so I went to **Lessons > Certificates > Add New Certificate**. No, that doesn’t work, and I still have no idea why there’s a way to add certificates there (the section is for displaying earned certificates). What I actually wanted was a certificate template. When I started to create learning objects, I figured the first thing I would need is a course, and the **Lessons** menu included entries for courses, lessons and certificates. There was only one “Add New” entry, however, and it turned out that was just for lessons. I got confused again when I wanted to add a quiz to a lesson and Sensei told me to add one from the *Lesson Quiz* box when it really meant *Quiz Questions*. Over in the **Sensei** menu, I’m still getting used to **Certificate Templates** being highlighted no matter what section I’m actually in. *Less Scalable*. I’ve worked on programs with up to 10 courses, each with an average of 10 lessons. During development, I disable lesson progression to make testing and review easy; with LearnDash, it’s a simple switch within courses. With Sensei, every lesson has a prerequisite and there’s no central switch for progression. Furthermore, the list of prerequisites includes lessons for all courses, so hundreds of lessons could potentially be displayed in a drop-down list. I can’t imagine how confusing it must be to go from no prerequisites to lesson progression when going live with a complex program . The default styling for Sensei also seems intended for a handful of courses and lessons, not dozens. *Quizzes and Score Tracking*. I really don’t like the way Sensei captures completion data. When learners complete a lesson, Sensei marks it as passing with a score of 100%. It’s a very strange approach. As for quizzes, which should actually track scores, what’s available is very limited compared to LearnDash. There are no sorting or multiple answer question types, which I really tend to rely on for variety. HTML is similarly excluded, which adds a lot of flexibility in LearnDash. Sensei also has far less control, including for pagination, statistics, providing feedback and reinforcement to learners, etc. *Certificate Names*. When learners complete a course, they should be recognized for their accomplishment and certificates are a great way to do this. Unfortunately, Sensei doesn’t seem to want to actually put their names on them. Sensei can only put the user’s “display name” on a certificate, so the documentation suggests advising users to update their profiles and change their “display name” to their first and last name. That’s completely impractical. ### Sensei or LearnDash? If you’re already embedded in the WooThemes ecosystem and use WooCommerce and their themes, it probably makes a lot of sense to go with Sensei. The [Sensei demo site](https://demo2.woothemes.com/sensei) by WooThemes looks great, so if your needs are basic, picking up the Hub theme they use along with Sensei is likely a good choice. Import the dummy data, customize as needed and you’re off and running. For other sites, like you can see with Uncanny Owl’s [Sensei demo site](https://sensei.uncannycloud.com), expect a bit more work. With better reporting, notifications and messaging, I can also see appeal for sites providing instructor-led virtual programs exclusively. If you typically spend time on the admin side of WordPress, have notifications enabled and have a relatively small group of learners, then I feel like it might be easier to stay connected with their activities using Sensei. (LearnDash does offer a Pro Panel for additional insight, but it’s quite limited.) LearnDash is likely a better choice for everyone else, especially when you factor in cost and support. At Uncanny Owl we support clients on both platforms, but for most new projects, we expect LearnDash to continue being the better fit. **Categories:** Learning --- ### [How to Reduce Cheating in your WordPress Course](https://www.uncannyowl.com/how-to-reduce-cheating-in-your-wordpress-course/) **Published:** March 17, 2026 **Author:** Ken **Content:** If you offer online courses on your WordPress site, your students are probably cheating more than you might expect. A [2024 study](https://link.springer.com/article/10.1007/s10805-023-09485-5) found that nearly 45% of students self-reported cheating on online exams. Artificial Intelligence is making the problem worse, as the majority of students now use generative AI for academic work and even test-taking. With online courses, it’s impossible to eliminate cheating entirely, but there are steps you can take and tools you can use that reward genuine understanding and reduce the feasibility of cheating. In this post, we’ll look at some of the ways you can make your WordPress courses more cheat-resistant. ## How Students Cheat in WordPress Courses Reducing the likelihood of cheating starts with understanding how your students are doing it. Here are some common ways that students cheat in online courses: **Viewing answers in the page source**. Some WordPress quiz plugins send correct answers to the browser before users answer questions. By inspecting the page, tech-savvy students can trace the answer key with minimal effort. And no, blocking students from right-clicking on your pages doesn’t really help. **Brute-forcing quizzes**. When quizzes allow unlimited attempts, students can retake a quiz over and over again, noting correct answers each time until they pass. **Sharing answers**. Easy screenshots, group chats, and discussion forums make it easy for students to share their answers. It’s even easier to share if quizzes offer the same questions in the same order to all students. **Using AI tools**. Students can copy questions into their favorite AI tool and get an answer in seconds. This is especially effective against recall-based multiple choice questions, which are what most WordPress quizzes use. **Skipping course content**. When course progress isn’t enforced, students can treat the quiz as the only thing that matters and skip everything else. ## Start With Your LMS Settings If you’re using [LearnDash](/share/learndash/) (and if you’re visiting this website, there’s a good chance that you are!), there are a variety of built-in features that can help to reduce cheating. Set course progression to [Linear](https://learndash.com/support/kb/core/courses/course-progression/#h-what-is-course-progression), which requires that students complete lesson and topic content in a specific order. Enable [forced lesson timers](https://learndash.com/support/kb/core/lessons/lesson-display-content/#h-adding-a-forced-lesson-timer) so that students must spend a minimum amount of time on a page before they can mark it as complete. Then over on the quiz side, you can limit the number of allowed attempts (limiting the risk of brute-force test-taking), add a time limit (so users have less time to share answers and look things up), and randomize questions and answers (to also reduce the risk of sharing). These are all features built into LearnDash, and only take a few minutes to configure when you set up new quizzes. ## Extend Protections with Uncanny Owl Plugins The built-in settings offered by LearnDash are a great foundation, but third-party tools can help to fill additional gaps. We offer several plugins that reduce cheating opportunities. The [Simple Course Timer module](https://www.uncannyowl.com/knowledge-base/simple-course-timer/) in [Uncanny Toolkit Pro](https://www.uncannyowl.com/plugins/) tracks cumulative active time across an entire course (not just per lesson or topic), and it includes a setting to block access to quizzes unless users have spent a minimum amount of time in a course. This way, you can make sure users spend enough time looking at course content before they can attempt a quiz and mark a course as complete. And don’t worry, it includes idle detection so that users can’t just load up a lesson and leave it onscreen to accumulate time.  The [Tin Canny Reporting plugin](https://www.uncannyowl.com/downloads/tin-canny-reporting/) adds support for SCORM and xAPI content, which also provides a means of controlling the Mark Complete button in a LearnDash course. By using uploaded assets, you can also control a user’s path and progression in a course. ## Use a Quiz Plugin That Prioritizes Security The assessment platform you choose for your online course is an important consideration—and one of the best ways to control the risk of cheating during a test. One example of a quiz plugin that integrates with LearnDash and offers robust anti-cheat controls is [PressPrimer Quiz](https://pressprimer.com/). Designed with assessment integrity in mind, here are some of the ways it can offer protection for your LearnDash course beyond what LearnDash quizzes can natively offer: 1. **Tight availability windows**. Assign quizzes with precise start and end times. If a quiz starts at 10:00 a.m. and is set to end at 10:30 a.m., and a student doesn’t start until 10:15 a.m., they only have 15 minutes to complete it before it’s automatically submitted. This significantly limits sharing opportunities.  2. **Large question banks with dynamic generation**. If you generate quiz questions from a pool of 3 banks of hundreds of questions each, there’s very little opportunity to share results when every attempt is virtually unique. 3. **Attempt limits with forced delays**. By controlling how long users have to wait between retakes, there’s much less risk of them brute-forcing attempts. 4. **Question analytics that reveal problems**. With reports for question quality, you can evaluate difficulty and distractor effectiveness to make sure quizzes are effective and properly measure student performance and learning in a course.  5. **Proctoring tools**. Alert instructors when cheating behaviors are likely taking place by detecting how often students are changing tabs or exiting full-screen mode for quizzes. ## Putting It All Together No single WordPress plugin or platform eliminates cheating, but taking a layered approach with the right tools make it a lot harder and less tempting to cheat. By configuring your LMS plugin settings properly, extending protections with Uncanny Owl plugins, and considering additional tools like [PressPrimer Quiz](https://pressprimer.com/), your courses will soon be locked down and experience far fewer instances of cheating. When the effort to cheat is greater than the effort needed to learn the material, most students will choose the honest path. **Categories:** Best Practices, LearnDash --- ### [Uncanny Redemption Codes 5.0: Enhanced Flexibility, Performance and a Visual Overhaul](https://www.uncannyowl.com/uncanny-redemption-codes-5-0-enhanced-flexibility-performance-and-a-visual-overhaul/) **Published:** March 9, 2026 **Author:** Ken **Content:** [Uncanny Redemption Codes](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/ "Uncanny LearnDash Codes") version 4.x was already the **most powerful code redemption plugin available for WordPress**. With the release of Uncanny Redemption Codes 5.0, we’ve added enhancements that make managing and distributing codes even more flexible. So whether you’re managing course or group enrollments with an LMS like LearnDash, or distributing codes for promotional campaigns, or automating custom code redemption workflows with Uncanny Automator, this release will have something for you. ## **What’s New in Version 5.0** ### **Individual Code Date Modification** One of our most requested features is here! You can now modify expiration dates for **individual codes**, giving you granular control over code expiry. No more bulk operations when you need to extend a single code’s validity—simply edit the date for that specific code and you’re done. This enhancement addresses a long-standing limitation and provides the flexibility many of you have been asking for. ### **Smarter LearnDash Validation** Version 5.0 introduces intelligent validation for LearnDash code redemptions. The system now checks whether users attempting to redeem codes are *already enrolled* in the associated course(s) or group(s). This prevents duplicate enrollments and wasted codes, while providing clearer feedback to users about their enrollment status. It’s a small change that makes a big difference in preventing confusion and support tickets. ### **Visual Updates** The entire Uncanny Redemption Codes UI has been updated with modern visuals, including admin screens as well front-end registration and redemption forms. The new forms look fantastic, but **if you have previously customized the forms on your site with CSS**, you should test the update on a staging site prior to updating on your live site (we recommend this as a best practice for all major plugin updates). ### **Performance Under the Hood** We’ve enhanced performance significantly by adding a *code\_id* index to the usage table. For sites managing thousands or even millions of codes, this optimization dramatically improves database query performance. Large-scale operations that previously took seconds will now complete in milliseconds, making the plugin more responsive for high-volume users. ### **A new name** You may have noticed the plugin is now called **Uncanny *Redemption* Codes**. We discovered that some users were a bit confused by the “Uncanny Codes” name, thinking the plugin might be similar to WP Code, or Code Snippets, having something to do with programming or custom code. Adding “Redemption” to the name makes it clear that the plugin is all about giving users the ability to redeem codes for access, rewards, store credit, achievements, and lots more. ### **Other updates:** - Gravity Forms – Code redemption moved to gf\_pre\_handle\_confirmation hook – ensures that codes are processed at the right moment in the form submission workflow, eliminating some edge cases making code redemptions more predictable and consistent. - Fixed Text domain warning on WordPress 6.7+ websites - Woo – Edit product – Automator codes product type no longer breaks the edit product page layout on some sites ## **Get Version 5.0 Today** These updates improve every aspect of Uncanny Redemption Codes. From more flexible individual code management, to performance improvements for large installations, to a fresh, modern design, version 5.0 can handle your code distribution workflows at any scale. Ready to upgrade? Current users can update directly from their WordPress admin panel. New users can [purchase Uncanny Redemption Codes](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/) and start leveraging these powerful features today! For a complete list of all changes, visit our [detailed changelog](https://www.uncannyowl.com/knowledge-base/uncanny-codes-changelog/). **Categories:** Uncategorized --- ### [The Uncanny Glow-Up: A New Look, a New Chapter](https://www.uncannyowl.com/the-uncanny-glow-up-a-new-look-a-new-chapter/) **Published:** February 25, 2026 **Author:** Ken **Content:** It’s hard to believe it’s been almost *13 years* since Ryan and I launched Uncanny Owl back in May 2013. Back then, we did a lot of the design work ourselves, including our logo and website. And while they served us well for over a decade, we were long overdue for an update. After sweating the details for months, our team is excited to launch our new, modernized website and updated branding including a new, simplified logo and a loveable new mascot. ## **Why Now?** The short answer: because where we’re headed demands it. When we started Uncanny Owl, LearnDash was a young plugin and WordPress eLearning was still finding its footing. We built our reputation by filling the gaps — [better reporting](https://www.uncannyowl.com/downloads/tin-canny-reporting/ "Tin Canny LearnDash Reporting"), [better group management](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/ "Uncanny LearnDash Groups"), [WordPress automation](https://automatorplugin.com "WordPress automation") (we were really the first in this space!), and [everything else](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/ "Uncanny LearnDash Toolkit Pro") that LearnDash site owners actually needed to run their businesses. That mission hasn’t changed, but it has grown. This rebrand is the first step in a renewed commitment to providing the best add-ons for LearnDash *and* a deliberate expansion of our solutions and expertise into the broader WordPress LMS ecosystem. We have a clear picture of where we’re taking Uncanny Owl, and now we have the website and branding to match. ## **What’s New** **A modernized logo.** Our original logo was created in an illustrative style and had character (I’m biased). The new one was created in a graphic design style and is sharper, cleaner, and easier to scale across every context — from plugin headers to conference banners. **A redesigned website.** The new uncannyowl.com makes it easier to find what you’re looking for. Whether you’re a solo course creator, an agency building client sites, or an L&D team managing thousands of learners, the new site gets you to the right answer faster. **Meet our new mascot.** Every good brand needs a face, and ours is a friendly owl who represents what we’ve always been about: helping people learn and teach more effectively. You’ll see it across our site, our documentation, and our plugins going forward. We think it captures the personality of our brand: approachable, knowledgeable, and just a little bit playful. A name is in the works! ## **Plugin Updates: More Than Skin Deep** The glow-up isn’t limited to just our website. We’re rolling out visual updates across our entire plugin suite, and planning longer-term architecture improvements under the hood. We’ve already completed a full visual overhaul of **[Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/ "Uncanny LearnDash Toolkit Pro")** and **[Uncanny Redemption Codes](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/ "Uncanny LearnDash Codes")**, with refreshed, modern interfaces. Other plugin overhauls are in the works — stay tuned for those. ## **Something Big Is Coming to Uncanny Automator** We’ve been working on something we’re not quite ready to fully unveil, but I’ll say this: [Uncanny Automator](https://automatorplugin.com) has always been the best way to automate your WordPress site. Soon, it’s going to be more than that. Much more. Imagine you could hire a full-time WordPress assistant that can build automations for you, but also completely understands your site, can answer questions about it and take care of a lot of those tasks you still do manually. Now imagine this assistant does all of this for just pennies a day. That’s what we’re building. Some tasks need an automation. Some just need to get done. We’re expanding Uncanny Automator to handle both. More details are coming very soon. If you’re an Automator user, you’ll want to pay attention. ## **Announcing Our Partnership with Team Tangible** Over the years, we’ve shifted our focus entirely to building and improving our plugins. But we’ve always known that many LearnDash site owners need more than plugins — they need expertise to help build the right learning experience. That’s why we’re officially announcing a partnership with [**Tangible Inc**](https://teamtangible.com/uncanny-owl-learndash-development/), one of the most accomplished LearnDash consulting agencies in the WordPress ecosystem. With over 400 clients and a team of more than 30 LearnDash experts, Tangible delivers everything from complete LearnDash builds to custom integrations, SCORM/xAPI support, enterprise-grade performance, and ongoing support. They’ve even built [hosting infrastructure specifically designed for demanding LearnDash and WordPress LMS sites](https://tangiblexp.com/?ref=info82). We’ve seen dramatic performance improvements on sites that have moved to their platform — the kind of speed gains that directly impact learner experience and completion rates. We’ll share the full details of this partnership in a separate blog post. For now, if you need expert LearnDash development or consulting, [head to our consulting page](https://www.uncannyowl.com/consulting/) to learn more about what Tangible can do. ## **Celebrate with Us: The Uncanny Glow-Up Sale** To mark The Uncanny Glow-Up, we’re running a sale on the **[All Access Pass](https://www.uncannyowl.com/all-access-pass/ "All Access Pass")** — our bundle of all five premium LearnDash plugins (Uncanny Toolkit Pro, Tin Canny Reporting, Uncanny Groups, Uncanny Redemption Codes, and Uncanny Continuing Education Credits), plus a 60% off coupon for Uncanny Automator Pro – Plus. The standout deal: the **10-site pass is just $299/year** (normally $699) — that’s over $1,800 in annual savings compared to buying plugins individually. The 2-site pass starts at $299 as well. [**Check out the Uncanny Glow-Up Sale →**](https://www.uncannyowl.com/all-access-pass/) ## **What’s Ahead** The Uncanny Glow-Up is a beginning, not a finish line. Over the coming months, you’ll see continued plugin overhauls, the launch of some groundbreaking new capabilities in Uncanny Automator, deeper investment in the LearnDash ecosystem, and the start of our expansion into the broader WordPress LMS space. We’ve been building eLearning tools for WordPress since 2013, but the best is still ahead of us. — Ken Young, Co-Founder, Uncanny Owl **Categories:** News --- ### [Tin Canny Reporting 5.0: A Major Milestone in LearnDash Reporting](https://www.uncannyowl.com/tin-canny-reporting-5-0-a-major-milestone-in-learndash-reporting/) **Published:** June 24, 2025 **Author:** Ken **Content:** When we set out to reimagine Tin Canny Reporting for LearnDash, we knew we weren’t just releasing another update. We were laying the foundation for the future of LearnDash reporting—and today, we’re thrilled to announce that Tin Canny Reporting 5.0 is here. This isn’t just an incremental update. It’s a complete transformation that brings massive performance improvements, a streamlined architecture, and the building blocks for exciting innovations to come. If you’ve been waiting for reports that load faster, work smoother, and scale better, your wait is over. ## What’s New in Version 5.0 and Above ### Lightning-Fast Performance, and a Foundation Built for the Future Remember waiting for reports to load while you grabbed another cup of coffee? Those days are behind you. Version 5.0 introduces massive performance improvements across all reports. The Course Report, User Report, Tin Can Report, and xAPI Quiz Report have all been refactored from the ground up. We’ve optimized database queries and improved caching, delivering reports that load in seconds, not minutes—even on sites with thousands of learners. Under the hood, we’ve completely overhauled Tin Canny’s core architecture. We’ve also updated all major libraries to their latest versions, including charting, DataTables, lightbox, and module search components. This isn’t just about making things run faster today (though it definitely does that). It’s about making it easier to maintain, extend, and enhance Tin Canny Reporting in the future. This means faster bug fixes, smoother updates, and more innovative features coming your way. ### Modernized Experience The Manage Content page got a complete visual overhaul with a modernized design that’s both beautiful and functional. We’ve added new columns showing upload dates and file sizes for each module, making it easier than ever to manage your e-learning content library. The Tin Canny front end Group Quiz Report now includes caching to dramatically improve load times, plus a loading animation to enhance the user experience. No more wondering if the report is working—you’ll see exactly what’s happening. ### Smarter Data Management New in version 5.0, you’ll find powerful options for managing your Tin Canny data: - Course and User Report settings to select default groups and page lengths - User Report added “Completion date” column for lessons/topics and “Start date” for courses - Smart fallback for statement capture when email data is unavailable - Purge specific statement types instead of all-or-nothing - Option to remove all Tin Canny data on plugin deletion ## What This Means for You If you’re a LearnDash site administrator dealing with hundreds or thousands of learners, version 5.0 is a game-changer. Reports that you had to wait for now load in seconds. Data that was difficult to access is now at your fingertips. For developers and agencies, the simplified architecture means easier customization and fewer compatibility issues. The improved performance means happier clients and fewer support tickets. And for everyone, the modernized interface and enhanced features mean a better experience every time you use Tin Canny Reporting. ## A Note About Testing Because version 5.0 is such a major update, we strongly recommend testing it on a staging site before deploying to your live environment. While we’ve tested extensively, every site is unique, and it’s always better to be safe than sorry. ## Looking Ahead Version 5.0 isn’t the end of our journey—it’s just the beginning. With this new foundation in place, we’re already working on new features that will make Tin Canny Reporting even more powerful and intuitive. We’re committed to making Tin Canny Reporting the most comprehensive, reliable, and user-friendly reporting solution for LearnDash. Version 5.0 is a major step toward that goal. ## Ready to Upgrade? Tin Canny Reporting for LearnDash version 5.0 is available now. Check out the [full changelog](https://www.uncannyowl.com/knowledge-base/tin-canny-learndash-reporting-changelog/) for all the details, and remember to test on a staging site first. We can’t wait to hear what you think of the new version. Your feedback has been instrumental in shaping these improvements, and we’re always listening for ways to make Tin Canny Reporting even better. --- *Have questions about upgrading to version 5.0? Check out our [knowledge base](https://www.uncannyowl.com/article-categories/tin-canny-learndash-reporting/) or [open a support ticket](https://www.uncannyowl.com/my-account/submit-a-request/). We’re here to help make your upgrade as smooth as possible.* **Categories:** eLearning, LearnDash, Tin Can --- ### [Use LearnDash Groups? You Need This.](https://www.uncannyowl.com/learndash-group-management/) **Published:** September 29, 2017 **Author:** Ryan Moore **Content:** We heard your requests for better group management in [LearnDash](https://www.uncannyowl.com/share/learndash/) and we listened! Today we’re releasing our [Uncanny LearnDash Groups plugin](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/), and it’s going to completely change what you and your Group Leaders can do with LearnDash groups. The plugin adds features in 3 main areas to your LearnDash elearning sites: 1. Selling courses and seats to organizations. 2. Managing groups in the front end. 3. Front end reports for Group Leaders. This plugin has something for everyone—maybe you just need front end group reports, or maybe you simply need a way to sell custom course bundles to organizations that you support. Use as much or as little as you need. Here’s a video that explains how the plugin adds new opportunities for using LearnDash Groups on your site: ### Group Management Made Easy If you currently manage groups or support Group Leaders, Uncanny LearnDash Groups will make your life a lot easier. After installing the plugin your Group Leaders can do everything *themselves*. No more emails to you and spending your time settings things up! Whether groups are set up through a purchase or by you, Group Leaders can add or remove users (with limits; no-one can cheat the system) and monitor progress. There are lots of options for making group management easy, including code-based invitations and redemptions, CSV uploads, and manual user changes. [](https://www.uncannyowl.com/wp-content/uploads/2017/09/LearnDash_Group_Management.png) In the screenshot above you can see how easy it is for Group Leaders to manage everything from one place. See how many seats are available; review what courses the group has access to; add individual users; upload users; download codes users can redeem for group and course access; buy more seats for the group; add and pay for more courses for the group; see progress for group members at the course level; review all quiz completions and drill down into individual results; and manage group leaders (not shown). All of this is possible from a single page and from the front end of the site. We know many site owners don’t like giving access to the back end to Group Leaders, and this plugin goes a long way towards making that possible. ### Easy Front End LearnDash Reporting Uncanny LearnDash Groups makes the reports people ask for most—course progress and quiz results—available in the front end to Group Leaders. No more working with CSV files or confusing widgets. Choose a group (if a Group Leader has more than one), the course or quiz, and get instant results. [](https://www.uncannyowl.com/wp-content/uploads/2017/09/Group_Course_Report.png) The course report is the easiest way for Group Leaders to track progress at a glance, especially with the filtering and search options available. The quiz report adds drill-down capabilities to see all quiz details for a learner, including how they answered LearnDash quiz questions and how long it took them. ### Sell to Organizations Without Lifting a Finger Wish there was a better way to sell to organizations that didn’t require you to create a group, create a Group Leader, invoice the organization offline, add their courses, upload their users and explain how everything works? (And yes, that’s usually what’s required for every group you add.) Uncanny LearnDash Groups integrates with WooCommerce to let organizations create their own groups with as many courses and licenses as they need. And they can do all of it completely independently. [](https://www.uncannyowl.com/wp-content/uploads/2017/09/Buy_LearnDash_Group_Licenses.png) The screenshot above is what users see when they’re buying a course. They set the group name, how many seats they need, and what courses they want for their learners. But the best part is that *they can add more seats and courses later*. Groups created with our plugin are completely flexible and organizations can change them themselves as their needs change. No other plugin can do this. It’s an entirely new way of selling to organizations that want your courses, and it’s finally feasible to sell to hundreds of organizations without needing a full-time resource to manage everything. There’s a lot more to it (including an amazing shortcode to show different course content to different groups!), but we’ll leave the finer details to our [Knowledge Base](https://www.uncannyowl.com/article-categories/uncanny-learndash-groups/). We know this plugin will help a lot of LearnDash users and we’re excited to finally get it out to the public! **Categories:** LearnDash --- ### [An Uncannily Outstanding 2024: How Stewardship Powered Innovation](https://www.uncannyowl.com/an-uncannily-outstanding-2024-how-stewardship-powered-innovation/) **Published:** December 31, 2024 **Author:** Brendan Da Costa **Content:** *Inspired by our trip to the Canadian Rockies, stewardship and innovation guided the Uncanny Owl team through 2024. And we can’t wait to show you what lies ahead for 2025.* When the Uncanny Owl team came together in the Canadian Rockies earlier this year, we had no idea how that trip would shape the future of our company. But the breathtaking beauty of the Rocky Mountains (somewhere I’m lucky enough to call home) instilled in the Uncanny team a deep **sense of stewardship**. Just as we sought to protect the pristine cerulean blue waters of the glacial-fed lakes, and the untrammeled wildlife of the alpine forests, we returned to our desks with a keen desire to be dutiful caretakers of another ecosystem: **the e-learning WordPress ecosystem**. If you’re familiar with any of our e-learning addons, then you already know that the Uncanny Owl team is no stranger to big projects and bold initiatives. But—not to sound too bragadocious—in 2024, we embraced innovation as a primary driver of our renewed spirit of stewardship and climbed to new heights for our users. [](https://www.uncannyowl.com/wp-content/uploads/2024/12/lake-louise-scaled.jpg) Here’s a look back at some of our most exciting achievements and innovations from 2024, and a glimpse into what’s ahead for 2025. ## **Uncanny Toolkit Pro for LearnDash: Elevating the User Experience** At nearly 4,000 meters, Mount Robson is the highest peak in the Canadian Rockies. And we wanted to help Toolkit Pro users summit that peak for their learners—figuratively speaking, of course. In the spirit of stewardship within the WordPress space, the user experience is front and center. So, in 2024, the Uncanny Owl team focused on elevating the user experience to positively atmospheric heights. Here are just a few of the e-learning peaks we managed to summit in 2024: - **Historical Course Records in Transcripts:** If you ever go on a trip to the Rocky Mountains, you’ll want to keep a detailed record of your adventures. Similarly, we know that your learners want to keep a detailed record of their academic adventures. Recognizing the importance of comprehensive learner records, we enabled the inclusion of historical course completions in learner transcripts. This feature, integrated with Uncanny Continuing Education Credits, allows students to access a complete history of their learning activities, even after course resets. - **Live Course Timer:** In the wilderness of the Canadian Rockies, you only need the movement of the sun across the sky to track the time and seasons. But, in the e-learning space, you need something slightly more sophisticated than a sundial. In light of this, we gave our users an accurate way to track time spent within courses with a live course timer. This tool provides real-time tracking, allowing learners to monitor their progress dynamically without the need to refresh pages. - **Cloudfare Turnstile (free version of Toolkit):** Learning to identify various plant and animal species unlocks worlds of wonder in the Canadian Rockies. But how can you tell the difference between a foxtail pine and a western white pine? Short of making some recommendations for books on arbology, we can’t really help you there. But, when it comes to telling the difference between bots and real learners, we’ve got you covered. This year, we introduced Cloudflare Turnstile support so you can more easily tell the difference between learner and a loon. [](https://www.uncannyowl.com/wp-content/uploads/2024/12/a-bird-flies-over-grassi-lakes-scaled.jpg) ## **Uncanny Groups for LearnDash: Empowering Group Leaders** Mountain excursions and e-learning enterprises have something in common: they both require group leaders. The more capable the leader, the more capable the group. That was part of our motivation for giving Uncanny Groups some substantial enhancements in 2024; to facilitate better group management and reporting. - **Access to Learner Transcripts:** We gave Group Leaders the ability to view detailed learner transcripts directly from the Group Course report. This addition offers a comprehensive overview of individual learner progress and achievements, fostering more effective oversight. - **Support for Multiple Group Purchases:** For organizations managing multiple teams, we introduced the ability to purchase multiple groups in a single transaction. This feature simplifies the procurement process and enhances flexibility in group management. [](https://www.uncannyowl.com/wp-content/uploads/2024/12/three-sisters-cropped-scaled.jpg) ## **Uncanny Continuing Education Credits: Smarter Reporting and Control** One of the key lessons for our team in the Canadian Rockies was that, however beautiful the landscape and captivating the wildlife, they are every bit as dangerous as they are mesmerizing. The Rocky Mountains around Banff and Jasper are accessible, but they are also treacherous and filled with predators such as mountain lions and grizzly bears. Even snowstorms and wildfires can turn calming hikes into perilous misadventures with a subtle change in the wind. However, in the spirit of innovation and stewardship, experienced mountaineers have learned the importance of one key safety measure: reports. Whether it’s a smoke map, an avalanche warning, or a grizzly bear notification, reports help outdoor enthusiasts enjoy the mountains responsibly. [](https://www.uncannyowl.com/wp-content/uploads/2024/12/sun-breaking-through-storm-banff-gondola-scaled.jpg) Similarly, for e-learning educators and administrators, reports are an effective tool for spotting trouble areas before they become a problem. In 2024, we improved our Continuing Education Credits plugin to provide administrators with more insightful reports and greater control. - **Enhanced Credit Reports:** From new and improved front-end reports to enhanced Gutenberg block settings, we overhauled the Credit Report feature. The new, revamped credit reports include performance options for a better user experience, new settings for report defaults, new filters, more export options, and new tools for editing and deleting credits. - **Historical Data Management:** Building on our commitment to comprehensive learner records, we improved the handling of historical data, ensuring that all course completions are accurately archived and accessible for reporting purposes. ## **Uncanny Automator: Expanding WordPress Horizons** Whenever you reach the peak of one mountain, there’s always another one just on the horizon, begging to be summited. That’s how the Uncanny Owl team has spent 2024; leaping from summit to summit. Throughout 2024, as we made significant improvements to our LearnDash addons, stewarding the e-learning environment onwards and upwards, we did the same for our other popular WordPress plugin: Uncanny Automator. We expanded our list of **deep integrations**, introduced a bevy of new triggers and actions, and added features like CSV, JSON, and XML **file imports**, as well as email attachment support and even **custom actions**. And that’s just the false peak. Want to know more about Automator’s amazing 2024? **[Read all about Automator’s uncanny year >>>](https://automatorplugin.com/an-uncanny-year-in-review-and-what-lies-ahead-for-2025)** ## **Looking Ahead to 2025** As we prepare for the new year, our map through the mountains includes further enhancements to our LearnDash plugins, and maybe even venturing beyond the LearnDash ecosystem into the LMS wilderness beyond. With a keen sense of stewardship, we remain dedicated to providing reliable tools that empower educators and learners and foster continuous improvement and success. Before we say goodbye to 2024, the whole team at Uncanny Owl would like to extend our heartfelt thanks to our users and partners for their continued support. Your feedback and engagement fueled us throughout the old year, and propels us into the new one. Here’s to a prosperous and transformative 2025! **Categories:** News --- ### [Customize Your Uncanny Groups + LearnDash Course Reports](https://www.uncannyowl.com/customize-your-uncanny-groups-learndash-course-reports/) **Published:** May 18, 2023 **Author:** Brendan Da Costa **Content:** *Add your own columns and data to Uncanny Groups and LearnDash course reports and empower your Group Leaders with the tools they need.* As an e-learning educator or administrator, you know how important it is to have accurate and detailed course reports. And while LearnDash has some built-in reporting tools, oftentimes, you need additional information. Custom data fields such as a user’s job title, age, department/organization or even last login date can be invaluable for administrators, instructors and LearnDash Group Leaders. So, if you’ve been looking for a way to add more columns and custom data to your Uncanny Groups and LearnDash course reports, then you’ve found the right page. In this article, we’ll show you a few simple ways to customize your Uncanny Groups and LearnDash course reports. We’ll also show you how to make those reports visible right from your WordPress dashboard so that Group Leaders can access them. Trust us, this will be the easiest course you take all day. ## **Custom Columns in CSV Files for Administrators** For WordPress and LearnDash administrators, one of the simplest reporting tools available are LearnDash’s native CSV reports. These reports provide administrators with the ability to export basic information on users’ course and quiz data to CSV files where they can perform in-depth analysis and keep track of their KPIs. As useful as these native CSV reports are, however, they don’t always contain the information that you’re looking for. Enter [Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/). To customize your LearnDash user reports, follow these simple steps. 1. **Download** [**Uncanny Toolkit Pro**](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) As the leading add-on for LearnDash users, [Uncanny Toolkit](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) expands and improves upon the features and functionalities of your LMS website. If you’ve ever found yourself wishing that LearnDash could do “X” (such as report customization) or show you “Y” (such as unique metadata), Uncanny Toolkit is the add-on you need. With 30+ modules and first-in-class support, you’ll have total control over your ability to customize your LearnDash site and your users’ e-learning experience. To gain access to additional modules, such as the *Enhanced LearnDash CSV Reports* module that we’ll be using to improve LearnDash Reports, you’ll need the Pro version of Uncanny Toolkit. [Click here](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) to download Uncanny Toolkit Pro. 2. **Select the *Enhanced LearnDash CSV Reports* Module** After downloading Uncanny Toolkit Pro, from your WordPress dashboard, navigate to *Uncanny Toolkit* > *Modules*. Scroll down to *Enhanced LearnDash CSV Reports* and toggle the module “On”. The toggle switch will appear green when enabled. 3. **Configure the Module Settings** To add columns to LearnDash user reports, click on **Settings** in the *Enhanced LearnDash CSV Reports* module. A pop-up window will appear where you can select from predefined columns such as *Username*, *Language* and *Website*. If you scroll down, you’ll also see that Toolkit Pro lets you add user and course metadata as columns when you enter the meta key. These fields are particularly useful when you want to include custom metadata. For example, we have created the custom metadata *department*, *job title*, *age* and *last login* to better understand our user engagement and performance. Having entered the meta key into the *Usermeta Key* fields, we were able to add those keys as columns in our exported CSV reports. If you don’t know how to create and retrieve custom metadata on WordPress, jump down to the section **Create Custom Metadata for WordPress**. We’ve seen how, with the Toolkit Pro add-on for LearnDash, you can drastically improve your LearnDash course reports. But CSV files don’t suit everyone’s workflows. Not to mention, Group Leaders and other instructors without administrator access to the back-end of your WordPress website won’t be able to retrieve their own LearnDash course reports. If you’re using the [Uncanny Groups for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) add-on, however, you can add columns to reports on the front-end of your WordPress website for Group Leaders and instructors to access. Furthermore, you’ll be able to export the reports to Excel if that format suits your workflows better than CSV files. ## **Custom Columns for** [**Uncanny Groups**](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) **Course Reports** If you’ve been using the [Uncanny Groups for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) add-on then you already know about all of the amazing features such as front-end management and reporting tools for Group Leaders. However, sometimes, your Group Leaders will need more information than what the default reports contain. Fortunately, there’s an easy way to add custom columns and data to your Uncanny Groups course reports. Follow these steps to help your Group Leaders drill down into their course and user data. We’ll also show you how easy it is to export course reports to Excel so that Group Leaders can track their KPIs and customize their analytics. 1. **Add Column Titles** First, you’ll need to add the titles of your custom columns to your Uncanny Groups course reports. To do this, you’ll need to add some code to the functions.php file of your child theme. The code snippet to add column titles to Uncanny Groups course reports is: ``` add_filter( 'ulgm_group_course_report_columns', function ( $columns ) { //Add new column(s) $columns['custom_key'] = ‘My custom column'; return $columns; }, 99, 1 ); ``` In the code snippet above, *$columns\[‘custom\_key’\] = ‘My custom column’* is where you can input the column title that you want. For example, we would like to add the column title *Last Login* so our code snippet would look like this: ``` add_filter( 'ulgm_group_course_report_columns', function ( $columns ) { //Add new column(s) $columns['leardash-last-login'] = 'Last Login'; return $columns; }, 99, 1 ); ``` Of course, you’d rarely only want to add only one column to your Uncanny Groups course reports. If you’d like to add multiple columns, simply include additional lines as follows: ``` add_filter( 'ulgm_group_course_report_columns', function ( $columns ) { //Add new column(s) $columns['learndash-last-login'] = 'Last Login'; $columns['age'] = 'Age'; $columns['organization'] = 'Organization'; $columns['job_title'] = 'Job Title'; return $columns; }, 99, 1 ); ``` 2. **Add Column Values** Now that you’ve added the column titles to your Uncanny Groups course reports, it’s time to add the values. To input the values of your custom columns into your Uncanny Groups course reports, add the following code snippet to the functions.php file of your child theme: ``` add_filter( 'ulgm_group_course_report_user_data', function ( $user_data, $user_id, $group_id, $course_id ) { // Add additional keys and add data like $user_data['custom_value'] = get_user_meta( $user_id, 'custom_value', true ); return $user_data; }, 99, 4 ); ``` In the code snippet above, *$user\_data\[‘custom\_value’\] = get\_user\_meta( $user\_id, ‘custom\_value’, true );* is the line that will retrieve the user’s metadata that you want included in your Uncanny Groups report. In our example, with the meta values for all of our corresponding column titles, the code snippet would look like this: ``` add_filter( 'ulgm_group_course_report_user_data', function ( $user_data, $user_id, $group_id, $course_id ) { // Add additional keys and add data like $user_data['learndash-last-login'] = get_user_meta( $user_id, 'learndash-last-login', true ); $user_data['age'] = get_user_meta( $user_id, 'age', true ); $user_data['organization'] = get_user_meta( $user_id, 'organization', true ); $user_data['job_title'] = get_user_meta( $user_id, 'job_title', true ); return $user_data; }, 99, 4 ); ``` Note: The snippet *$user\_data\[‘learndash-last-login’\] = get\_user\_meta( $user\_id, ‘learndash-last-login’, true );* will return a timestamp value. If you want your course report to return the *learndash-last-login* value as the date format from your WordPress settings, you can use this code snippet: ``` add_filter( 'ulgm_group_course_report_user_data', function ( $user_data, $user_id, $group_id, $course_id ) { $date_format = get_option( 'date_format' ); $login_timestamp = get_user_meta( $user_id, 'learndash-last-login', true ); // Add additional keys and add data like $user_data['learndash-last-login'] = wp_date( $date_format, $login_timestamp ); return $user_data; }, 99, 4 ); ``` 3. **Export Uncanny Groups Reports to Excel** Navigate to the page(s) where you have your Uncanny Groups course reports. Note, you can include Uncanny Groups course reports on any page with the shortcode: \[uo\_groups\_course\_report\]. As you can see in the image below, our custom columns along with the corresponding metadata have been added to our course report. To export the report to Excel, simply click **Excel export** in the upper right-hand corner. That’s all it takes! ## **Create Custom Metadata for Your LearnDash Reports** By default, WordPress stores a lot of data about your users. But it’s not always the data that you’re looking for. Throughout this article, we’ve been using custom WordPress metadata that suit our specific needs and workflows. Perhaps you’re already doing this on your site, like capturing “job title” or “department” in registration forms from your favorite form plugin, or a plugin like Advanced Custom Fields that adds extra data to users and posts. But, for greater control and management over your user and content records, you might need some additional help. One popular solution for creating and manipulating custom WordPress metadata is our [Uncanny Automator](https://automatorplugin.com/pricing/) plugin. With Automator, you can craft recipes to create and alter unique metadata that you wouldn’t otherwise be able to. For example, we could help our Group Leaders by putting some key analytics right at their fingertips. The recipe pictured above is the same one that we used to create some of the unique user metadata that you saw throughout this article. Whenever a user registers with our WPForms registration form, Automator creates the user meta *organization* and *job\_title* along with the three unique key/value pairs *quiz\_100, quiz\_85* and *quiz\_60* to track the number of quizzes a user passes with a given percentage score. We can then use subsequent recipes to alter that metadata, saving our Group Leaders hours of administrative work. With these recipes and the ability to add custom columns to Uncanny Groups course reports, Group Leaders can easily keep track of their learners’ progress. If you want to learn how to create your own WordPress metadata with Automator, then [download the plugin](https://automatorplugin.com/pricing/) and read [a brief tutorial](https://automatorplugin.com/knowledge-base/user-meta-tokens/) on mastering WordPress metadata. **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [Uncanny CEUs 5.0: Smarter Reports, More Control](https://www.uncannyowl.com/uncanny-ceus-5-0-smarter-reports-more-control/) **Published:** October 30, 2024 **Author:** Ryan Moore **Content:** If you’re a fan of our [Continuing Education Credits plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), hold on to your hats! The 5.0 release is here, and it’s packed with new features that will make managing CEUs and credits smoother than ever before. Whether you’re an admin in need of more flexible reports or you have Group Leaders begging for more data, 5.0 is sure to win you over with its enhanced functionality, user-friendly updates, and a sprinkle of our signature Uncanny efficiency. ### Front End reporting: Now even more comprehensive The [Continuing Education Report](https://www.uncannyowl.com/knowledge-base/continuing-education-report/) has been the backbone of our plugin’s reporting system, but in 5.0, we gave it a major upgrade. If you’re used to the old report, you’ll be pleasantly surprised by the new, enhanced front-end version. Not only does it look slicker, but it’s also far more customizable than ever before. To use the new report, just add this shortcode with the new “enhanced” attribute to a page: \[uo\_ceu\_report enhanced=”on”\] Now, you can filter columns, adjust the displayed data, and configure the report to show exactly what you need. The update allows you to integrate the report seamlessly into your site’s layout without needing to code a thing. It’s fast, it’s efficient, and it’s designed with user experience in mind. As a quick reminder, here’s what the old report looked like: [](https://www.uncannyowl.com/wp-content/uploads/2024/10/Uncanny-CEUs-report.png) And here’s the new one (with some optional features turned on): [](https://www.uncannyowl.com/wp-content/uploads/2024/10/Uncanny-CEUs-enhanced-report.png) Notice anything different? Yes, it’s basically a new report. New filters, new exports, data for multiple users at once, support for adding, editing and deleting records support for custom columns, etc. Check out the [Knowledge Base article](https://www.uncannyowl.com/knowledge-base/continuing-education-report/) for a complete rundown of everything you can do with the new report! ### Group Hierarchy support: Perfect for child groups Do you manage a large LearnDash group with a complex hierarchy of child groups? Then you’re going to love the new setting that allows front-end and admin reports to include data from child groups. This means you can pull one comprehensive report without needing to run multiple reports for each subgroup. Whether you’re running continuing education programs for multiple departments or managing different courses across varied locations, you now have one unified report to rule them all. And as they say in the world of admin tasks: less is more. Here’s the new setting that makes it all possible: [](https://www.uncannyowl.com/wp-content/uploads/2024/10/CEU-child-group-data.png) ### Editable CEUs and Credits Admins, rejoice! You now have full control over your CEUs and credits—yes, you read that right. With the 5.0 update, you can *edit* and *delete* credits as needed, both in the front and back end. Whether you’ve entered the wrong amount or simply need to tidy things up, this new feature puts the power back in your hands. Got a user who completed half a course but didn’t earn the full credit? No problem. Want to remove a credit that was incorrectly assigned? Easy. This is what continuing education administration should look like—clear, simple, and stress-free. ### New Gutenberg block We understand that not everyone is a coding whiz, and that’s okay. With our new Gutenberg block for the Continuing Education report, adding and configuring reports on your site has never been easier. Forget shortcode gymnastics—just drag and drop the block onto your page, tweak the settings, and voila! A fully-functional, customized CEU report in no time at all. ### 5.0 is the update you didn’t know you needed If you’re already using the [Continuing Education Credits plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), you’re going to love how 5.0 simplifies your life. From editable credits to comprehensive reporting with Excel/CSV exports and child group data, the updates in this release are designed to give you more control and save you time. Managing continuing education has never been easier or more efficient. For those of you who haven’t yet purchased this plugin, now’s the perfect time to jump in. These new features make the Continuing Education Credits plugin a must-have for organizations that need to track CEUs and manage reports efficiently. And trust us—once you experience the ease of the new enhancements, you’ll wonder how you ever managed without it. For a full list of updates in Uncanny CEUs 5.0, make sure to check out the [changelog](https://www.uncannyowl.com/knowledge-base/continuing-education-credits-changelog/). **Categories:** Continuing Education, News --- ### [Toolkit Pro 4.0: Generate LearnDash Certificates in Bulk](https://www.uncannyowl.com/toolkit-pro-4-0-generate-learndash-certificates-in-bulk/) **Published:** April 11, 2023 **Author:** Ryan Moore **Content:** It’s here! The Uncanny Owl team is thrilled to announce that version 4.0 of the [Uncanny Toolkit Pro plugin for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) is now available. The latest update to the most popular third-party premium add-on for LearnDash adds 1 new module and a huge number of new features and improvements. Let’s jump right in to what’s new. ### Generate LearnDash Certificates in Bulk It’s a question LearnDash users have been asking for years: How can my Group Leaders and I download certificates for all of our students? Until today, you couldn’t. You had to look up records for one user at a time, find the right course or quiz, then generate a new certificate. It was time-consuming to the point of being completely impractical for large groups of users and courses. With the new [Download Certificates in Bulk](https://www.uncannyowl.com/knowledge-base/download-certificates-in-bulk/) module, grabbing a large batch of certificates is as easy as adding a shortcode to a page. When viewed by an admin or Group Leader user (the Group Leader must, of course, be the leader of one or more groups), it’s possible to download a zip file with Group, Course or Quiz certificates. To get started, add \[uo\_download\_certificates\] to a page and choose the type of certificate to download: [](https://www.uncannyowl.com/wp-content/uploads/2023/04/Download-LearnDash-Certificates-1.png) Depending on the type of certificate, you might be prompted to choose a group, course and/or quiz. As long as whatever you select has quizzes associated it, you will see an option to generate certificates. Here’s an example for bulk course certificate generation: [](https://www.uncannyowl.com/wp-content/uploads/2023/04/Generate-Bulk-LearnDash-Certificates.png) In the above example, the module will look up all students in the Uncanny Owl group, see who has completed the “Intro to Bulk Certificates” course, and then create a zip file for all students that have earned a certificate. Inside the zip file will be a set of certificate files in PDF format. One important thing to note is that all certificates in LearnDash are generated dynamically, and we rely on LearnDash for this generation. Because some criteria might generate hundreds, or even thousands, of certificates, we push processing to the background and send an email when the generation is complete along with a link to download the certificates. This process can be slow, perhaps upwards of 10 minutes if there are a lot of certificates to generate. There are a number of settings available in this new module, including the free space required in the environment to allow certificate generation, email notification settings and an option to delete all temporary certificate zip files. (Certificate zip files are automatically purged after 12 hours to ensure that sites don’t run out of space. ) [](https://www.uncannyowl.com/wp-content/uploads/2023/04/LearnDash-Certificate-Download-Settings.png) ### Other Toolkit Pro Enhancements Uncanny Toolkit Pro for LearnDash 4.0 also includes several other noteworthy improvements, including the following: - The [Transcript](https://www.uncannyowl.com/knowledge-base/learner-transcript/) module adds support for category attributes (e.g. \[uo\_transcript ld\_category=”all” category=”all”\]), so you can more easily control exactly what’s output in a transcript. Perhaps sample or hidden courses should be excluded from the report. - Notification emails for the [Group Expiration module](https://www.uncannyowl.com/knowledge-base/learndash-group-expiration/) include several new filters for overriding the header, subject and message programmatically, like: $headers = apply\_filters( ‘uo\_ld\_expire\_group\_email\_headers’, $headers ); $message = apply\_filters( ‘uo\_ld\_expire\_group\_email\_message’, $message, $user, $group\_id ); $sub = apply\_filters( ‘uo\_ld\_expire\_group\_email\_subject’, $email\_title, $user, $group\_id ); - The [Import Users module](https://www.uncannyowl.com/knowledge-base/import-learndash-users/) ignores blank rows, so users with empty rows they didn’t realize they included in the CSV file will no longer see errors. - The PDF export for the LearnDash Transcript module now supports RTL languages. - The [Reset Progress button module](https://www.uncannyowl.com/knowledge-base/learndash-reset/) now supports deleting time records from the [Simple Course Timer module](https://www.uncannyowl.com/knowledge-base/simple-course-timer/) by using this filter: apply\_filters( ‘uo\_course\_timer\_data\_reset\_enabled’, false, $course\_id, $user\_id ) - Pages created by the [Group Registration module](https://www.uncannyowl.com/knowledge-base/group-sign-up/) are now hidden by default from search engines. - The Group Registration module adds improved WPML support. We hope you find the update useful! A full list of changes can be found in the Toolkit Pro [changelog](https://www.uncannyowl.com/knowledge-base/learndash-toolkit-pro-change-log/). **Categories:** LearnDash, News, Uncanny LearnDash Toolkit --- ### [What's New in Uncanny Groups 6.0](https://www.uncannyowl.com/whats-new-in-uncanny-groups-6-0/) **Published:** January 31, 2024 **Author:** Ryan Moore **Content:** [Uncanny Groups 6.0](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) is a huge release that adds some big features that we’ve been planning for years. The biggest features are support for purchasing multiple groups in a single transaction and new Woo settings, but there’s a *lot* more in this release. ### Sell multiple LearnDash Groups By far the biggest feature in 6.0 is support for multiple groups in a single purchase. Previously, we ran into too many issues trying to offer this type of support, like, how to capture names for different groups as part of the checkout workflow, how to handle bulk and other discounts, scenarios involving users adding courses they choose to groups, etc. It took a lot of hard work and plugin changes to pull it off, and yes, you will notice a lot of differences as a result. As an example, you will now see group name fields on product and cart pages, like this: [](https://www.uncannyowl.com/wp-content/uploads/2024/01/Group-Name-Product-Page.png)Maybe you don’t want the new options to buy multiple group products in 1 transaction and to see group name fields everywhere? In that case, we have these new options in WooCommerce Settings: - Hide “Group Name” field(s) on checkout page - Hide “Group Name” field on product page - Do not make the “Group Name” field editable on cart page One note here is that while someone can buy multiple groups linked to different products in the same transaction, you cannot buy multiple groups *linked to the same product.* That remains a Woo limitation, as trying to add a higher quantity linked to an existing product ID in your cart will just add more seats to the group; it can’t be an independent group. Certainly this is a huge change, and will affect existing sites, so this may be a feature you want to test in a Staging environment before you deploy 6.0 to a live environment. ### New tax support Group products now support their own tax class and status. This allows groups that are generated dynamically, like from the Buy Courses page where users can choose courses for their groups, to support a default tax class and status. You’ll find these new options in the *WooCommerce Settings* under *Uncanny Groups > Settings*, and they look like this: ### [](https://www.uncannyowl.com/wp-content/uploads/2024/01/New-Group-Tax-Options.png) ### Group Progress search Searching for users on the [Manage Progress](https://www.uncannyowl.com/knowledge-base/manage-learner-progress/) page is now much easier, with autocomplete now supported as you enter a user name, email address key, or ID. It looks like this: [](https://www.uncannyowl.com/wp-content/uploads/2024/01/Manage-Progress-user-selection.png) ### Accessibility improvements We had some WCAG-related concerns raised a few months ago from one of our users, so we have been gradually working on enhancements to overall accessibility. This includes: - Better keyboard navigation in the front end. - Making it easier for screen readers to detect values in drop-down lists. - Adding some labels where the purpose of a field wasn’t clear. ### Other improvements The [bulk discount system](https://www.uncannyowl.com/knowledge-base/configure-bulk-discounts/) has been rebuilt so that the license price is discounted directly instead of adding a negative fee to the order. This improves compatibility with other plugins that may have trouble accounting for a negative fee (including several PDF invoice plugins), which are now compatible with Uncanny Groups. For sites with huge essay volumes (and we’ve seen several with hundreds of thousands), there’s a new load\_on\_render=”no” attribute for the [Front End Essay Question Management shortcode](https://www.uncannyowl.com/knowledge-base/front-end-essay-question-management/) (as well as a Gutenberg block panel) that you can use to not load any essays on page visit, like this: \[uo\_groups\_essays load\_on\_render=”no”\] When this is enabled, it means essays will only be loaded *after* the user has set up filters and initiated the query. This means report loading time will be faster and won’t fail on very high-volume sites. New compatibility options with AffiliateWP have been added, so now the referral amount applies to the order total after the discount (if one exists). That covers the highlights of the [Uncanny Groups 6.0](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) release. We hope you enjoy all of the new features! **Categories:** LearnDash, News --- ### [Transcripts for Group Leaders, Live Timer](https://www.uncannyowl.com/transcripts-for-group-leaders-live-timer/) **Published:** February 7, 2024 **Author:** Ryan Moore **Content:** The [Uncanny Toolkit Pro for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) 4.2 release is a big one that adds several new features and a number of enhancements across several modules. Let’s jump in to what’s new. ### Group Leader access to Transcripts Last week we released an [Uncanny Groups update](https://www.uncannyowl.com/whats-new-in-uncanny-groups-6-0/) that now allows you to connect the [Group Course report](https://www.uncannyowl.com/knowledge-base/group-leader-reports/#the-group-course-report) to [student transcripts](https://www.uncannyowl.com/knowledge-base/learner-transcript/), and with today’s Toolkit Pro release completing the support, it’s now possible for Group Leaders to see a complete transcript for any of their students. This is of course an optional tool, but it makes it far easier for Group Leaders to get a printable report of student activity and accomplishments. Adding support for transcript access on your site is easy. Simply edit the Group Course report page and add this attribute to the \[uo\_groups\_course\_report\] shortcode: transcript-page-id=”123″ Replace “123” with the ID of your transcript page. You might then end up with a shortcode that looks like this: \[uo\_groups\_course\_report transcript-page-id=”2780″\]. (And yes, this attribute is also supported in the block editor.) Now when Group Leaders or admins view the Course report, they will see a new column to access student transcripts, like this: [](https://www.uncannyowl.com/wp-content/uploads/2024/02/Group-Leader-Transcripts.png) Please note that the transcript view that Group Leaders will see *exactly* matches the [transcripts](https://www.uncannyowl.com/knowledge-base/learner-transcript/) students see. This means it includes all learning records, not just ones associated with courses linked to groups associated with the Group Leader. It might also include custom CEU records. ### Simple Course Timer: Live timer The [Simple Course Timer](https://www.uncannyowl.com/knowledge-base/simple-course-timer/) has long been used by LearnDash sites as a way to track active time inside a course. Rather than simply looking at a user’s start and end dates to determine time in a course, this Toolkit Pro module tracks the actual time spent in a course, lesson, topic or quiz. While we do have shortcodes that can show users the time they have spent on a page or an entire course, it has always been a static value. On page load we output that value and it doesn’t change, so if users wanted to see an updated record of their course time, they needed to reload the page. This was particularly painful when sites used our option to restrict access to quizzes until a certain amount of time had elapsed in the course. Today’s Toolkit Pro release adds a new shortcode for this module: \[uo\_time\_live\] When added to any LearnDash post type, it will output the user’s current cumulative time spent in the course, and then it will count up. This new tool makes it far easier for a student to see exactly how much time they have spent in a course without having to reload the page. ### Other improvements The [Enhanced Course Grid module](https://www.uncannyowl.com/knowledge-base/enhanced-course-grid/) adds a new “taxonomy\_relation” attribute that you can set to AND or OR. We ran into some situations on user sites where they might specify both WordPress *and* LearnDash categories in the shortcode, and we always treated the course output as using “OR” operators for the taxonomies. Now you can set taxonomy\_relation=”AND” in the shortcode and the courses returned will match all taxonomy rules. The [Enhanced Lessons/Topics Grid](https://www.uncannyowl.com/knowledge-base/enhanced-lessontopic-grid/) gained a new setting for showing quizzes in grids. This makes it possible to show quizzes alongside lessons or topics when they’re set at the same level. It looks like this: [](https://www.uncannyowl.com/wp-content/uploads/2024/02/Include-quizzes-in-LearnDash-grids.png) In the [Duplicate Pages & Posts module](https://www.uncannyowl.com/knowledge-base/duplicate-pages-posts/), we have changed the minimum role capability required to duplicate posts to “edit\_published\_posts”. This will make it easier for non-admin roles to use this tool. The [Import Users](https://www.uncannyowl.com/knowledge-base/import-learndash-users/) module emails have a new %Password Reset URL% token for including a plain text copy of the URL in emails. While there was an existing token that linked to the password page, it relied on an HTML link and was problematic in situations where a plain text URL would be more appropriate. And in the [Group Registration](https://www.uncannyowl.com/knowledge-base/group-sign-up/) module, there are new filters for uo\_ld\_group\_signup\_registered\_message, uo\_ld\_group\_signup\_joined\_remove\_previous\_group\_message and uo\_ld\_group\_signup\_joined\_message to override standard module messages. That covers the highlights of the [Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) release! We hope you the new features are useful to you. **Categories:** LearnDash, News --- ### [New LearnDash Quiz Report](https://www.uncannyowl.com/new-learndash-quiz-report/) **Published:** February 8, 2024 **Author:** Ryan Moore **Content:** [Tin Canny 4.4](https://www.uncannyowl.com/downloads/tin-canny-reporting/) is now available, and the biggest new feature is the addition of a new type of LearnDash quiz report. There are also a number of usability improvements for existing Tin Canny users. ### LearnDash Detailed Quiz Report Yes, we have the [Group Leader Quiz report](https://www.uncannyowl.com/knowledge-base/front-end-quiz-reports/) in Tin Canny, and the [Group Quiz report](https://www.uncannyowl.com/knowledge-base/group-leader-reports/#the-group-quiz-report) in Uncanny Groups, but we still invariably had requests for more quiz data presented in different ways. If an admin wanted to see records for users not in groups, or to identify users that hadn’t yet taken a quiz they were assigned, for example, it was very difficult to retrieve this data. The new LearnDash Detailed Quiz reports offer a new alternative that removes some of these constraints. This is what it looks like: [](https://www.uncannyowl.com/wp-content/uploads/2024/02/LearnDash-Detailed-Quiz-Report.png) There are a few key things to note in the screenshot above that differ from other quiz reports: - In the “Group” drop-down list, you can either choose a group or admins can show records for any group *as well as users not in a group*. This is a key difference, because most other reports are group-based. - There is no course selection. The report shows *all* records for a quiz, even if it’s included in multiple courses. - Columns are customizable. - Records are shown for all users with access to a quiz, not just users with quiz attempts. This makes it easy to identify users that haven’t yet completed quizzes but are assigned to them. If you don’t want this behaviour, you can easily turn it off by adding this filter to the functions.php file of your child theme: add\_filter( ‘uotc\_quiz\_report\_hide\_unattempted\_users’, ‘\_\_return\_true’ ); - All attempts are shown, not just the highest-scoring quiz attempt. To use the new report, add this shortcode to any page: ``` [uotc_ld_quiz_report] ``` Besides the new report, there are a number of minor improvements, including showing the maximum file upload size when uploads are via full zip files, and removing the cancel button for full zip uploads (since the upload can’t actually be cancelled). **Categories:** LearnDash, News, Tin Can, Uncategorized --- ### [Import Student Records Into LearnDash with Uncanny Toolkit Pro](https://www.uncannyowl.com/import-student-records-into-learndash-with-uncanny-toolkit-pro/) **Published:** February 9, 2024 **Author:** Brendan Da Costa **Content:** Have you recently switched your LMS platform over to **LearnDash**? Or maybe you’re just in the beginning stages of considering a migration. Either way, you’ll eventually be faced with the question: how do I import my students’ records into LearnDash? First things first, bookmark this page! You’ll be glad you did when it comes time to transfer those records. While there are plenty of options out there for transferring course and quiz content over to LearnDash, carrying forward your students’ academic records isn’t always so simple. That’s where [**Uncanny Toolkit Pro**](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/#pricing) and [**Uncanny Automator Pro**](https://www.automatorplugin.com/pricing) come in handy. With these two plugins, you can easily transfer your students’ records from any old LMS to your new LearnDash platform with just a few clicks. Without further ado, let’s get started making that migration. ## **Introduction** We probably don’t have to tell you; maintaining meticulous records is a must for any elearning business. However, solutions for migrating student progress aren’t as obvious or seamless as solutions for migrating course and quiz content. Unless you have the right tools for the job. In this guide, we’ll show you how to import your students’ course and quiz completion data using **Uncanny Toolkit Pro** and **Uncanny Automator Pro**. We’re certain that you’ll find this to be the easiest, most secure and quickest way to migrate your students’ progress to your new LearnDash platform. First, let’s take a look at the tools we’ll be using. ## [Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/#pricing) Uncanny Toolkit Pro is a feature-rich addon that expands LearnDash’s functionality. Improve the student experience with modules such as lesson drips and course access expiry counters. Simplify life for instructors with features such as group registration, certificate previews and improved CSV reports. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/uncanny-toolkit-pro-homepage.png) Of course, administrators will also love Toolkit Pro features such as the “Import Users” and “Learner Transcripts” modules. We’ll be using the “Import Users” feature in this guide as the first step in transferring our student records. [**Grab Toolkit Pro now so you can follow along.>>>**](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/#pricing) ## [Uncanny Automator Pro](https://www.automatorplugin.com/pricing) [**Uncanny Automator**](https://www.automatorplugin.com/pricing) is the #1 automation and integration tool for WordPress websites. Using simple combinations of triggers and actions, you can automate repetitive tasks (such as transferring student records) and connect your favorite apps and plugins. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/automator-homepage.png) Automator Pro gives you access to WordPress user meta where you can safely and securely store your students’ academic progress. With the click of a button, you’ll be able to update thousands of student records at once. [**Get your Automator Pro license now so you can streamline your administrative workflows.>>>**](https://www.automatorplugin.com/pricing) ## **Import Student Course Completions to LearnDash** Now that you have all of the tools you need, it’s time to get those records into LearnDash. The process of transferring student course and quiz completion data can be broken down into three (3) basic steps: 1. Create one or more CSV files containing the relevant student information 2. Import users to WordPress (or update existing users) with Toolkit Pro 3. Mark courses and/or quizzes complete for select students with Automator Pro Using Automator logs (which we’ll show you towards the end of this tutorial) you’ll be able to review the transfer process to ensure that your records are accurate. First, let’s start with creating and formatting our CSV file. **1. Create a CSV File** The first step in importing student records to LearnDash is to create a CSV file that contains all of the student information that you wish to transfer. The “User Import” module that we’ll demonstrate in the next step allows you to create user meta fields (where plugins like LearnDash store user data) by adding columns in your CSV file. For example, in our CSV file, we created the column, “course\_completion\_3550” where the number “3350” is the course ID of the LearnDash course for which we want to transfer student progress. (Note: [Click here](https://www.learndash.com/support/docs/faqs/find-course-id/?gad_source=1&gclid=Cj0KCQiAzoeuBhDqARIsAMdH14GQntDVDC5582S7_Gqbd1lEPyxKXvy8YidSz7xH90q4LJrueig_u74aAh7ZEALw_wcB) if you do not know how to find the course ID for your LearnDash courses.) [](https://www.uncannyowl.com/wp-content/uploads/2024/02/csv-file-custom-user-meta-fields.png) If you arrange the rows of your CSV file by user under a column heading such as “user\_email” or “display\_name”, you can add as many columns to create as many unique user meta fields as is needed to transfer all of a students’ records. If you’re uncertain how exactly to format your CSV table, download the sample table under *Users* > *Import Users* from your WordPress Admin Dashboard and use that as a template. You can then add your own column headings such as “job\_title” or “department” to transfer more user data. **2.** [**Import Users**](https://www.uncannyowl.com/knowledge-base/import-learndash-users/?utm_source=uncanny_toolkit_pro&utm_medium=modules&utm_content=learn_more-import_users) **with Toolkit Pro** Once you have created a CSV file with all of the relevant student information, you can import the new users (or update existing ones) with the “Import Users” module. From your WordPress Admin Dashboard, navigate to *Users* > *Import Users*. This screen contains instructions for configuring your Toolkit Pro settings to personalize the import process. **In our experience, most users prefer to disable email notifications for the import process to avoid confusing their students, group leaders and administrators.** If you would like more detailed instructions on configuring your Toolkit Pro settings and how those settings may impact your users’ experience, [click here](https://www.uncannyowl.com/knowledge-base/import-learndash-users/?utm_source=uncanny_toolkit_pro&utm_medium=modules&utm_content=learn_more-import_users).) After configuring these settings under the *Options* and *Email Settings* tabs, navigate to the *Import Users* tab and **upload the CSV file**. Once Toolkit Pro completes the upload process, new users will be created if they don’t already exist while existing users will be updated with the new information from the CSV file. The new custom meta fields (i.e. what were the column headings in your CSV file) will have values that correspond to the cell value at the intersection of the user’s row and the meta field column. **3. Mark Course/Quiz Completions for Select Students** Now, this is where the magic happens. We’re going to create an Automator recipe (i.e. combination of triggers and actions) to update all of our student records at once. First, from your WordPress Admin Sidebar, navigate to *Automator* > *Add new recipe*. In the pop-up window that appears, select *Everyone*. [](https://www.uncannyowl.com/wp-content/uploads/2023/11/select-recipe-type-everyone.png) Give your recipe a name that makes it easy to recognize at a glance. For example, we’ve named the recipe “Mark 3550 Course Completions”. From the menu of available integrations, select **Run now** then select *Trigger recipe manually* from the drop-down list that appears. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/run-now-integration.png) In the *Actions* panel, click **Add** and select *User loop* from the drop-down list. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/add-user-loop.png) By default, Automator will run user loops on all users who do not have the role “Administrator” in WordPress. You can, however, change the user loop filter by hovering over it, clicking on the **Edit filter** icon and changing the conditions of the filter. For example, we have altered the conditions so that the user loop will only run on users with the role “Subscriber”. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/user-loop-filter-has-role-subscriber.png) Next, within the user loop, click **Add action** and select **LearnDash** from the menu of available integrations. [](https://www.uncannyowl.com/wp-content/uploads/2023/11/learndash-integration.png) From the drop-down list that appears, select *Mark a course complete for the user*. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/learndash-action-mark-a-course-complete-for-the-user.png) Automator will prompt you to select the course you would like to mark complete. For your convenience, the course list will have the course title as well as the course ID. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/learndash-course-3550-photography-101.png) Once you have selected the course, click **Save**. Your user loop should now look something like this: [](https://www.uncannyowl.com/wp-content/uploads/2024/02/user-loop-learndash-action-mark-course-complete-live.png) Needless to say, it’s unlikely that all of your users will have completed all of your courses. That’s why we created the user meta “course\_completion\_3550”. We can now use this metadata in our recipe to differentiate between the users who have completed the course and those who have not. Hover over the LearnDash action that you just created and click **Filter**. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/user-loop-learndash-action-mark-course-complete-filter.png) In the *Condition* window that appears, select *A token meets a condition*. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/filter-a-token-meets-a-condition.png) Automator will prompt you to configure the rule that defines the condition for the token. In the *Token* field, click the **Asterisk** and select *Advanced* > *User meta* from the drop-down list that appears. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/user-meta-token-for-filter-condition.png) Automator will now prompt you to enter the user meta field that you wish to target (which, in our example, is “course\_completion\_3550”). Next, configure the rule that the meta field value must satisfy for the action to run on the user. In our example, this value is “Yes” (i.e. the value in our CSV file that we used to indicate whether or not a user had completed a course). [](https://www.uncannyowl.com/wp-content/uploads/2024/02/course-completion-3550-user-meta-is-yes.gif) Once you’re finished, click **Save filter**. Your user loop should now look something like this: [](https://www.uncannyowl.com/wp-content/uploads/2024/02/user-loop-learndash-action-mark-course-complete-with-filter-live.png) Once you click **Run now**, Automator will cycle through every user on your WordPress website that satisfies the user loop filter(s) and mark the LearnDash course complete for them if they have the user meta value(s) that you’ve specified. Of course, you’ll want to review the successful transfer of your student records, but you likely don’t have time to do this individually. Thankfully, you can check the recipe logs for a summation of the actions taken. Simply click **View logs** in the recipe panel and review that the correct user(s) have had their academic records updated. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/mark-3550-course-completions-recipe-logs.png) Automator allows you to add as many actions and filters to recipes as you want. You can choose to use a single recipe to import all course completions to LearnDash or unique recipes for each course. It’s up to you. Just know that the more actions and/or users you include in a single recipe, the longer it will take to execute the recipe. Additionally, the recipe logs may not be as easy to review. ## **Import Student Lesson and Quiz Completions to LearnDash** Chances are, when you migrate your LMS to LearnDash, most if not all of your students will be in the middle of their education. Thankfully, Automator gives you the ability to transfer your student records on a more granular level. Simply add lesson and quiz level data in your CSV file as you did for courses. Then, recreate the Automator recipe we configured above but use the *Mark a lesson complete for the user* and the *Mark a quiz complete for the user* actions instead. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/mark-lesson-3722-complete-recipe.png) ## **Conclusion** Hopefully now, you feel confident in safely, securely and speedily transferring your student records into LearnDash. What we showed you in this brief guide, however, was just the beginning of what you can do with Toolkit Pro and Automator to improve your and your users’ LearnDash experience. Keep coming back to learn more about how Uncanny Toolkit Pro and Automator can enhance your LMS website. Still not sure how to import some of your students’ academic progress to LearnDash? Drop us a line in the comments section below. The learning never stops! **Categories:** Uncanny LearnDash Toolkit --- ### [H5P for LearnDash: How to Create Interactive and Engaging Course Content](https://www.uncannyowl.com/h5p-for-learndash-how-to-create-interactive-and-engaging-course-content/) **Published:** August 7, 2024 **Author:** Brendan Da Costa **Content:** *Learn how to integrate H5P and LearnDash to create fully immersive and interactive course content. Plus get Tin Canny for detailed course and quiz reports.* H5P can transform the e-learning experience, making it more engaging and effective for learners of all kinds. If you’ve been wondering how to integrate **H5P** interactive content with your LearnDash courses, then this is the guide for you. In this walkthrough, we’ll take you from installation to implementation and beyond so you can harness the power of H5P for [**LearnDash**](https://www.uncannyowl.com/share/learndash/). Learn how to create interactive and dynamic content that engages your learners and delivers results. Finally, we’ll introduce you to [**Tin Canny Reporting for LearnDash**](https://www.uncannyowl.com/downloads/tin-canny-reporting/), the most comprehensive LearnDash course and quiz reporting tool, to track your learners’ progress through your augmented content. Get ready to elevate your e-learning game and captivate your students like never before. ## **Benefits of Integrating H5P and LearnDash** According to [this 2023 study](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10019397/), learners who engaged with H5P interactive content “reported a positive experience and indicated a preference for more interactive elements”. But an enhanced user experience is just one of a host of benefits that comes from integrating H5P with LearnDash. Here are some more of the key advantages: 1. **Increased Engagement:** H5P allows you to create interactive content like quizzes, interactive videos, drag-and-drop activities, and more. These elements engage learners actively, making the learning process more enjoyable and effective. 2. **User-Friendly Interface:** H5P’s intuitive, browser-based editor makes it easy for educators to design and integrate rich media elements into their content—no coding skills required. This ease of use can encourage educators to make frequent and meaningful updates and customizations to course material. 3. **Enhanced Learning Outcomes:** By combining different content types, H5P supports varied learning styles and fosters deeper comprehension. 4. **No Additional Cost:** H5P is FREE to use! Educators looking to enhance their content can do so without taking on an additional financial burden. 5. **Compatibility with LearnDash and Tin Canny:** H5P content is fully compatible with LearnDash, and when used with Tin Canny Reporting, provides detailed insights into learner performance. This integration helps educators track progress, identify learning gaps, and tailor instructions to meet the needs of their students. 6. **Versatility and Flexibility:** H5P supports a wide range of content types, including interactive presentations, memory games, fill-in-the-blanks, and more. This versatility allows educators to create diverse learning experiences that can adapt to various educational contexts, environments and objectives. By leveraging the power of H5P, educators can create more interactive, engaging, and effective online courses in LearnDash, leading to improved learner outcomes and satisfaction. In the next section, we’ll talk a little bit more about what, exactly, H5P is and how it integrates with LearnDash. Then we’ll start creating some H5P content. ## **H5P, xAPI, LearnDash: What You Must Know** Before we start creating interactive content, there are a few things you should know about H5P, xAPI and how these tools integrate with LearnDash. ### **Introduction to H5P** H5P (HTML5 Package) is an open-source content collaboration framework for creating and sharing interactive content. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/h5p-homepage.png) This tool supports various types of content, such as interactive videos, quizzes, presentations, and more, making learning experiences more engaging and dynamic. ### **What is xAPI?** Want to know how, exactly, H5P integrates with LearnDash? In a word: xAPI. The Experience API (xAPI), also known as Tin Can API, is a specification for learning technologies that enables tracking and recording of learning experiences across diverse platforms and environments. In other words, xAPI is the mechanism that communicates H5P data to LearnDash. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/xapi-homepage.png) xAPI statements are structured as “Noun, Verb, Object” (for example, “John passed the quiz” or “John completed the course”) and provide detailed information about learner interactions. Each statement can contain additional information such as scores and timestamps. As an educator or educational administrator, that’s all you’ll really need to know about xAPI. However, if you would like to know more about xAPI, you can [dive into the details here](https://xapi.com/overview/). ### **H5P Content Types with xAPI Support** Not all H5P content types have xAPI support. This means that not all of the interactive content that you create with H5P can contribute to a learner’s progression through a LearnDash course, lesson or topic. Below, you can find a list of H5P content types with documented xAPI support. **Drag and Drop** A free HTML5-based drag and drop question type allowing creatives to create many forms of drag and drop using only a web browser. **Drag the Words** A free HTML5 based question type allowing creatives to create text based challenges where users are to drag words into blanks in sentences. Excellent for language training among other things. ****Fill in the Blanks**** A free HTML5 based question type allowing learners to fill in the blanks, also known as cloze tests, with H5P in publishing systems like WordPress. ****Find the Hotspot**** A free HTML5 based question type allowing creatives to create an image based test where the learner is to find the correct spot on an image. ****Mark the Words**** A free HTML5 based question type allowing creatives to create challenges where the user is to mark specific types of verbs in a text. ****Multiple Choice**** A free HTML5 based question type allowing creatives to create challenges where the user is to identify one or more correct choices. ****Quiz (Question Set)**** A free HTML5 based content type allowing creatives to create quizzes. Many question types are supported like multiple choice, fill in the blanks, drag the words, mark the words and regular drag and drop. ****Single Choice Set**** A free HTML5 based content type allowing creatives to create simple and smooth quizzes consisting of single choice questions. ******Summary****** A free HTML5 summary builder. This content type allows creatives to create challenges where the user is to choose between statements and build the correct summary. ********Interactive Video******** An HTML5-based interactive video content type allowing users to add multiple choice and fill in the blank questions, pop-up text and other types of interactions to their videos using only a web browser. **********Course Presentation********** A free HTML5-based presentation content type which allows users to add multiple choice questions, fill in the blanks, text, and other types of interactions to their presentations using only a web browser. Note: These are simply the H5P content types with documented xAPI support at the time of writing. Some additional content types might have xAPI support that is not explicitly stated and/or documented. It is recommended to always test content types with your LearnDash courses, lessons and topics before publishing them to learners. Note as well that **Tin Canny Reporting** can still track some interactions that do not contribute to course completion. For example, **Tin Canny** can track a user’s interaction with the H5P content type “Accordion”. We’ll explore more of this in a later section. ### **LearnDash Post Types and H5P Content** Even if a H5P content type has xAPI support, it may not necessarily contribute to a learner’s progress **depending on the LearnDash post type in which the H5P content is embedded.** In essence, LearnDash has four post types: Courses, Lessons, Topics and Quizzes. **Only Lesson and Topic** post types will support embedded H5P content that contributes to LearnDash course progress. However, if you have the **Uncanny Toolkit Pro** plugin and enable the “Single Course Page” module, you can embed H5P content directly into LearnDash courses. We will talk more about that “uncanny” feature in a later section. ## **Integrate H5P and LearnDash: Download, Install and Engage** Now that we know a little bit more about H5P and how it integrates with LearnDash, let’s get started creating some engaging interactive content. **Step 1: Install H5P** From your WordPress Admin Dashboard, navigate to *Plugins* > *Add New Plugin*. Search for the H5P plugin and click **Install Now**. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/install-h5p-plugin.png) Once you’ve installed the H5P plugin, click **Activate**. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/activate-h5p-plugin.png) **Step 2: Select H5P Content Type** From your WordPress Admin Dashboard, navigate to *H5P Content* > *Add New*. A panel *may* appear in the new screen, explaining that you will need to install a content type before continuing. If the panel did appear, click **I consent, give me the Hub!** [](https://www.uncannyowl.com/wp-content/uploads/2024/08/h5p-connect-to-hub.png) A panel *may* appear in the new screen, explaining that you will need to install a content type before continuing.If the panel did appear, click **I consent, give me the Hub!** Select the type of interactive content that you want to create. For example, we have selected “Fill in the Blanks”. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/fill-in-the-blanks-h5p-content-type.png) **Install** the content type if you haven’t already then click **Use**. **Step 3: Create H5P Content** Regardless of the content type that you have selected, H5P will have instructions on how to create your interactive content. For example, if you have selected “Fill in the Blanks” as we have, you will see these instructions: [](https://www.uncannyowl.com/wp-content/uploads/2024/08/h5p-fill-in-the-blanks-instructions.png) Or, if you had selected the “Interactive Video” content type, you would see these instructions: [](https://www.uncannyowl.com/wp-content/uploads/2024/08/h5p-interactive-video-content-type.png) Once you’re finished, click **Create**. H5P will generate the content for you and provide you with a shortcode that you can use to embed it in your LearnDash courses, lessons, topics and quizzes. (Recall, however, that embedded H5P content will only contribute to learner progress in lessons and topics unless you have the **Uncanny Toolkit Pro** plugin.) [](https://www.uncannyowl.com/wp-content/uploads/2024/08/shortcode-for-h5p-content.png) Not sure where to start? You can download sample content from H5P [**here**](https://h5p.org/content-types-and-applications). Select the type of content you want to sample and click **Reuse** on the content page. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/h5p-sample-content.png) **Step 4: Embed H5P Content Into LearnDash** After creating your H5P content, **Copy** the shortcode. Open the lesson or topic you want to embed the content in. In the Lesson or Topic page, click the **Plus sign “+”** to add a block and select the **Shortcode** block. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/learndash-lesson-builder-shortcode-block.png) **Paste** the H5P shortcode into the space provided. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/h5p-shortcode-in-learndash-lesson-builder.png) Complete building the rest of your lesson/topic. Once you’re finished, click **Publish** (or **Save** if you had previously published the post.) **Step 5: Test Your Interactive Content** You’re just about done! Add the lesson/topic to one of your courses from the LearnDash course builder. Before you open the enrollment process to your learners, we recommend testing your new interactive content. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/interactive-fill-in-the-blanks.gif) Great! Now that your interactive content is up and running, you’re probably wondering, “How can I track my learners’ progress?” In the next section, we’ll take a look at the only tool that can track your learners’ progress as well as their interactions with H5P content and generate detailed reports. ## [ Tin Canny Reporting ](https://www.uncannyowl.com/downloads/tin-canny-reporting/) for LearnDash and H5P Interactive Content Integrating H5P interactive content with your LearnDash courses adds another dimension to your LMS data. [**Tin Canny Reporting for LearnDash**](https://www.uncannyowl.com/downloads/tin-canny-reporting/) is the advanced reporting tool that provides in-depth insights into learner activities and engagement with interactive content. By integrating with H5P content, Tin Canny extends the capabilities of LearnDash, allowing educators to track detailed learner engagement and performance metrics. This section explores how Tin Canny Reporting works with H5P content and highlights its key features. ### **Detailed xAPI and H5P Reports** Tin Canny captures detailed xAPI statements from H5P content, providing granular insights into learner interactions. This includes tracking quiz responses, video interactions, and other H5P activities. For example, the “Tin Can Report” allows us to track our users’ engagement with all kinds of H5P content, even if it does not contribute to course progression. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/tin-can-report-all-interactions.png) The “xAPI Quiz Report” is another powerful tool for tracking even more granular xAPI data such as a learner’s responses to H5P interactive content. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/tin-canny-xapi-quiz-report.png) Tin Canny includes useful filters so that you can generate reports based on types of interactions, users, courses groups and more. With Tin Canny, educators can generate comprehensive progress reports that detail each learner’s journey through a course. These reports include data on which H5P activities have been completed, scores achieved, responses given, time spent on each activity and much more. [**Get Tin Canny Reporting for LearnDash so you can upgrade your LearnDash reports and incorporate H5P and xAPI content data>>>.**](https://www.uncannyowl.com/downloads/tin-canny-reporting/) ## [ Uncanny Toolkit Pro ](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/): Integrating H5P Content in LearnDash Courses Without Lessons [**Get Tin Canny Reporting for LearnDash so you can upgrade your LearnDash reports and incorporate H5P and xAPI content data>>>.**](https://www.uncannyowl.com/downloads/tin-canny-reporting/) So far, we’ve looked at embedding H5P interactive content into two types of LearnDash posts; lessons and topics. But what if you wanted to embed H5P content directly into a LearnDash course post type? This would be the case if you had a simple course that did not consist of lessons and its subordinate topics. On their own, H5P and LearnDash can’t accommodate such a scenario. But, with the [**Uncanny Toolkit Pro**](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) plugin, you can unlock more learning possibilities. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/uncanny-toolkit-pro-homepage.png) The Toolkit Pro plugin is designed specifically for augmenting and expanding LearnDash’s already impressive capabilities. If you’ve ever thought, “I sure wish LearnDash could do this,” there’s a good chance that the feature you’re looking for is in the toolkit—the Uncanny Toolkit. “Modules” such as “Group Expiration” and “Simple Course Timer” add much-needed functionality to a LearnDash website. However, it’s the “Single Course Pages” module that H5P users will find particularly interesting. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/toolkit-pro-single-course-page-module.png) The module makes it possible for users to create LearnDash courses that do not include lessons or topics. With this module enabled, users can embed H5P/xAPI supported content directly into a LearnDash course and still track progress and completions. Want to make a course out of an interactive video? Or an interactive video paired with a quiz that included a question set? You can make that happen with Tin Canny Reporting. ## More H5P and LearnDash Integrations with [ Automator ](https://www.automatorplugin.com/pricing) Still looking for more ways to integrate H5P and LearnDash? The [**Uncanny Automator**](https://www.automatorplugin.com/pricing) plugin may just be the tool you’re looking for. [](https://www.uncannyowl.com/wp-content/uploads/2022/12/Automator-Mascot-Icon-512px.png) Automator is the #1 automation and integration tool for WordPress websites, allowing you to connect H5P content to your whole LMS ecosystem. Using simple combinations of triggers and actions, you can do anything from sending an email in your preferred CRM to creating a card or task in Trello or ClickUp based on a learner’s journey. In the recipe pictured below, for example, we’re able to send an email to learners who score at or below a threshold with links to remedial content. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/h5p-automations-1.png) We could also choose from any number of LearnDash specific actions, from adding learners to groups or enrolling them in courses based on their H5P content completions. [](https://www.uncannyowl.com/wp-content/uploads/2024/08/learndash-actions.gif) [**Want to see how much more you can do with H5P and LearnDash? Get an Automator Pro license and integrate interactive content with your whole WordPress website>>>.**](https://www.automatorplugin.com/pricing) ## **Best Practices and Frequently Asked Questions** By now, you’re ready to create just about any kind of interactive content and integrate it with your LearnDash courses. But, as you continue to use H5P and LearnDash together, here are some best practices to keep in mind. **1. All H5P Interactive Content Has a Place** Different types of H5P content serve different purposes. Even if a content type does not have xAPI support and will not contribute to course progression, it may still be a valuable tool for reaching course objectives. **2. Test Compatibility and Functionality** Before deploying H5P content in live courses, thoroughly test each interactive element to ensure it functions correctly within the LearnDash environment. Verify that xAPI statements are being correctly sent and received, and that the content tracks learner progress accurately. **3. Use Tin Canny Reports to Monitor Engagement** Regularly review the data and reports generated by Tin Canny Reporting for LearnDash to monitor learner engagement with your interactive elements. You can use engagement metrics to inform content creation in the future and improve learner performance. **1. All H5P Interactive Content Has a Place** **How can I integrate H5P content with my LearnDash courses?** To embed H5P content into a LearnDash course: 1\. **Install** and **activate** the H5P plugin on your WordPress website. 2\. Create H5P content from the **H5P Content** menu. 3\. **Copy** the generated shortcode for the H5P content. 4\. **Paste** the shortcode into the LearnDash lesson(s) and/or topic(s) where you want the content to appear. 5\. **Add** the lesson(s) and topic(s) with your H5P content to a LearnDash course. This process allows you to integrate interactive H5P content seamlessly into your LearnDash courses, enhancing the learning experience. **Does progress in H5P and/or xAPI supported content equal progress in a LearnDash course?** Completion of H5P and/or xAPI supported content **does not** necessarily equal completion of a LearnDash course. LearnDash course progression is measured strictly by completion of the course’s lessons and subordinate topics. In other words, if a learner completed 50% of a lesson’s H5P/xAPI supported content, they would not have completed 50% of the course. This is true even if you are using the [**Uncanny Toolkit Pro**](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) plugin with the “Single Course Pages” module activated. ****Which H5P content types can I use with LearnDash?**** Technically, you can use any H5P content type with LearnDash. However, only the content types with xAPI support will contribute to LearnDash course progression. Check out our list of H5P content types with documented xAPI support above. Note, however, that this list is not exhaustive and subject to change with updates. ******What is Tin Canny Reporting and why do I need it for H5P and xAPI content?****** [**Tin Canny Reporting for LearnDash**](https://www.uncannyowl.com/downloads/tin-canny-reporting/) is an advanced reporting tool that provides in-depth insights into learner activities and engagement with interactive content. It is the only plugin for LearnDash-powered websites that will capture, collate and combine your LearnDash data with H5P and xAPI supported content data. **2. Test Compatibility and Functionality** ## **Conclusion** **3. Use Tin Canny Reports to Monitor Engagement** In this post, we’ve shown you how integrating H5P with LearnDash adds another dimension to your e-learning platform with interactive and engaging learning experiences. This comprehensive guide walked you through the essential steps to integrate H5P content, explained the significance of xAPI, and highlighted the importance of tracking learner progress with Tin Canny Reporting. **Ready to elevate your LearnDash content?** Record learner interactions with H5P and xAPI supported content with [**Tin Canny Reporting for LearnDash**](https://www.uncannyowl.com/downloads/tin-canny-reporting/). Then, unlock additional features for your LearnDash site with [**Uncanny Toolkit Pro**](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/). And don’t forget that more H5P integrations are waiting for you with an [**Uncanny Automator Pro license**](https://www.automatorplugin.com/pricing). Until next time, keep up the learning! **Ready to elevate your LearnDash content?** **Categories:** Best Practices, LearnDash, Tin Can --- ### [New Group Management & Transcript Features](https://www.uncannyowl.com/new-group-management-transcript-features/) **Published:** July 11, 2024 **Author:** Ryan Moore **Content:** To support several new features for [LearnDash](/share/learndash/) group management and transcripts, today we released updates for [Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/), [Uncanny Toolkit for LearnDash](https://en-ca.wordpress.org/plugins/uncanny-learndash-toolkit/), [Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) and [Uncanny Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/). There are also multiple quality of life improvements that will make things easier for users of those 4 plugins. ### Show archived data in transcripts Our [Uncanny Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) plugin has long offered a way to archive LearnDash course completions, so that when progress gets reset, there was still a record of those completions. It wasn’t always easier for students themselves to see those records, however, so today’s releases of Uncanny CEUs and Toolkit Pro make it possible to show those records in learner transcripts with this new setting: [](https://www.uncannyowl.com/wp-content/uploads/2024/07/Show-archived-course-completions-in-transcripts-1.png) This tool is optional, and only available when we detect that Uncanny Continuing Education Credits is active, but when enabled students will be able to see all course completion records, both current and archived. It now represents the best way for students to see a consolidated view of their current and historical learning activities. ### New features in Uncanny Groups for LearnDash The existing user upload tool on the [Group Management page](https://www.uncannyowl.com/knowledge-base/group-management-page/) can be limiting, which was done intentionally to make sure Group Leaders could make changes that had the potential to introduce security or privacy risks. Going forward, Group Leaders can now add additional records to CSV upload files: - Including a “user\_login” column in the upload file allows Group Leaders to set the WordPress account username for new users. - User meta keys can be added as column headings and the contents of those columns will be added as meta values. These are still advanced capabilities for Group Leaders, so most will not (and probably should not) be using these tools, but they are available now for situations where they can provide value. In the [Group Course report](https://www.uncannyowl.com/knowledge-base/group-leader-reports/), there’s a new “Time” column for courses that can be optionally included if you use the [Simple Course Timer](https://www.uncannyowl.com/knowledge-base/simple-course-timer/) module in Uncanny Toolkit Pro. Over in the Group Quiz report, we have had a number of requests to remove columns completely so they’re simply no longer available. There are now options to set or unset columns with a filter, as in this code snippet example: ``` add_filter( 'ulgm_quiz_report_table_columns', function( $columns ) { if ( isset( $columns['quiz_modal'] ) ) { unset( $columns['quiz_modal'] ); } if ( isset( $columns['quiz_score'] ) ) { //unset( $columns['quiz_score'] ); } if ( isset( $columns['user_email'] ) ) { //unset( $columns['user_email'] ); } if ( isset( $columns['quiz_date'] ) ) { //unset( $columns['quiz_date'] ); } return $columns; } ); ``` Finally, groups gain a new option to set a group-specific email template for the “Send enrollment key” email. From LearnDash group edit pages, you can now set an override to send out emails unique to the group when enrollment keys are sent out to invited users. Additional improvements and fixes for today’s 4 plugin releases are covered in their respective changelogs: [Uncanny Toolkit for LearnDash](https://www.uncannyowl.com/knowledge-base/learndash-toolkit-changelog/) [Uncanny Toolkit Pro](https://www.uncannyowl.com/knowledge-base/learndash-toolkit-pro-change-log/) [Uncanny Groups](https://www.uncannyowl.com/knowledge-base/uncanny-learndash-groups-changelog/) [Uncanny Continuing Education Credits](https://www.uncannyowl.com/knowledge-base/continuing-education-credits-changelog/) **Categories:** LearnDash, News --- ### [The Uncanny Ecosystem: How to Use Uncanny Plugins Together](https://www.uncannyowl.com/the-uncanny-ecosystem-how-to-use-uncanny-plugins-together/) **Published:** May 2, 2024 **Author:** Brendan Da Costa **Content:** *Discover more incredible ways to use the Uncanny Owl addons and plugins that you already have! Get better LearnDash reports, more control over your groups and much more!* Since its inception, the team at Uncanny Owl has been dedicated to helping build the **[LearnDash](https://www.uncannyowl.com/share/learndash/)** community. As such, over the years, we’ve been proud to develop some of the highest-rated addons and plugins in the LMS ecosystem. Of course, each of our plugins and addons are standalone products that can enhance the user experience and save site administrators countless hours. But, if you’re reading this article, you probably already knew that. After all, **Uncanny Toolkit** is the #1 free plugin for LearnDash websites and **[Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/#pricing)** is the top paid third-party addon. However, we also designed our plugins and addons to work together in surprising ways that even experienced LearnDash web developers might not know. In this article, we want to explore the ways in which the Uncanny ecosystem of addons and plugins can improve your LearnDash LMS. We bet you didn’t even know you had these hidden tools at your fingertips the whole time! Let’s take a look. ## **[Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/#pricing) + [Tin Canny Reporting](https://www.uncannyowl.com/downloads/tin-canny-reporting/#pricing): Course Timer** **[Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/#pricing)** is a LearnDash addon that enhances the functionality of your LMS. With the simple click of a button, you can add any number of features (what we call modules) to your LearnDash website. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/uncanny-toolkit-pro-homepage.png) Want to preview certificates, add a course expiration countdown, import users, restrict access or create custom group logos? All of that and more is possible with the Toolkit Pro addon. Similarly, **[Tin Canny Reporting](https://www.uncannyowl.com/downloads/tin-canny-reporting/#pricing)** puts your LearnDash user, course and even quiz data right at your fingertips. If you’re looking for a data-driven approach to improve the learner experience and inform educators and group leaders, then Tin Canny Reporting is a must-have. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/tin-canny-reporting-homepage.png) Toolkit Pro and Tin Canny Reporting work best together with Toolkit Pro’s **Simple Course Timer** module. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/toolkit-pro-simple-course-timer-module.png) When you activate this module, Toolkit Pro will automatically track the amount of time that a student spends on a course. The module also detects idle time and gives you the ability to restrict access to quizzes until a student spends a minimum amount of time in a course. With the Tin Canny Reporting addon, the **Simple Course Timer** adds two columns to your LearnDash course reports: *Time to Complete* and *Time Spent*. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/tin-canny-reporting-course-report-with-time-columns.png) You can use these columns to assess course difficulty, identify stragglers and optimize content for your learners. Additionally, thanks to Tin Canny’s one-click export features, you can download your course reports in a CSV file and analyze your metrics in **Google Sheets**, **Numbers** or any spreadsheet of your choosing. ## **Toolkit Pro + [Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/#pricing): Enhanced CSV Reports** The **[Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/#pricing)** addon gives LearnDash administrators the ability to award certificates based on credits. If you’ve ever wanted to create a dynamic degree or offer the elearning equivalent to your in-person programs, this is the addon you’ve been looking for. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/continuing-education-credits-homepage.png) Pairing the **Continuing Education Credits** addon with Toolkit Pro’s **Enhance CSV Reports** module also improves some of LearnDash’s core reporting features. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/toolkit-pro-enhanced-csv-reports.png) LearnDash’s *User Course Data* and *User Quiz Data* are both great reporting tools on their own. Just as with Tin Canny Reporting, one-click export and download to a CSV file format makes analyzing your LMS data that much easier. However, when you pair Uncanny’s **Enhanced CSV Reports** module with the **Continuing Education Credits** addon, you get some additional LMS data. After you’ve activated the module, click **Settings** and check the box next to *Uncanny CEU*s. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/enhanced-learndash-csv-reports-ceus.png) From now on, your LearnDash course and quiz reports will include a column with the learner’s CEUs. This enhanced report can help educators and administrators in segmenting learners, tracking learners’ progress and fulfilling educational targets. ## **Toolkit Pro + Continuing Education Credits: Learner Transcripts** The **Enhanced CSV Reports** that we explored in the previous section added a CEUs column for site administrators and educators. But students also have a vested interest in tracking their credits and monitoring their progress. That’s where the **Learner Transcripts** module in Toolkit Pro comes in. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/toolkit-pro-learner-transcript-module.png) When paired with the **Continuing Education Credits** addon, the **Learner Transcripts** module adds a CEUs column to the front-end of your website. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/learner-transcript-module-ceus-addon.png) To add this student transcript to your LearnDash website, simply insert this shortcode on any page (likely the user’s Account page): ``` [uo_transcript] ``` Your learners will now have easy access to a report that includes all of their progress to-date so they can better manage their own educational goals. ## **Toolkit Pro + [Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/): Registration with Seat Limits** The **[Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/)** addon is the best way to manage organizations within your LearnDash LMS. Give your group leaders access to management and reporting tools without compromising your site security. Sell group access licenses so that organizations can manage themselves and create group hierarchies. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/uncanny-groups-for-learndash-homepage.png) Toolkit Pro’s **Group Registration** module adds another must-have feature to the Uncanny Groups addon for easier, hands-off group management.  By creating unique registration URLs, the **Group Registration** module allows users to register for groups themselves when creating their accounts. Additionally, users can change groups or join new ones by visiting the unique registration URLs. Most importantly, with the **Uncanny Groups** addon and the **Group Registration** module working together, you can ensure that seat limits are never exceeded. If an unregistered or existing user visits a group’s unique registration URL when that group is full, they will see a simple message informing them that there are no available seats. ## **[Uncanny Automator](https://www.automatorplugin.com/pricing) + Everything!** For all other symbiotic relationships in the Uncanny ecosystem, there is **[Uncanny Automator](https://www.automatorplugin.com/pricing)**. As the #1 automation and integration plugin for WordPress websites, Automator can connect all of the various apps and plugins that you use to enhance your LearnDash LMS. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/learndash-and-uncanny-integrations-in-automator.png) With **[Uncanny Codes](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/#pricing)** and **Uncanny Groups**, for example, Automator can register users for a group when they redeem a code. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/uncanny-codes-and-learndash-recipe.png) Alternatively, Automator can add and remove seats from a group in **Uncanny Groups** with code redemption to help organizations within your LMS to promote courses and groups. [](https://www.uncannyowl.com/wp-content/uploads/2024/04/uncanny-codes-and-uncanny-groups-recipe.png) Or, how about awarding unique LearnDash certificates based on a learner’s **Uncanny CEUs** credits? [](https://www.uncannyowl.com/wp-content/uploads/2024/04/uncanny-ceus-and-learndash-certificates-recipe.png) All of these integrations between Uncanny Owl plugins and addons are possible with **Automator**—plus a whole lot more! With dozens of triggers, actions and filters to choose from you can create just about symbiotic integration between **LearnDash** and **Uncanny Owl** plugins and addons that you can dream of. ## **Conclusion** In this post, we explored some of the hidden ways that Uncanny Owl plugins and addons work together. In the end, we briefly explored how Uncanny Owl’s Automator plugin can create even more powerful integrations between your favorite LearnDash addons and plugins. You should now have a better understanding of how the Uncanny ecosystem ties together. Of course, we’re always looking for more ways to help you manage your WordPress website. Don’t see an integration that you’re desperate to have? Unsure how some of these integrations work? Drop us a line in the comments section below and we’ll get back to you. **Categories:** Best Practices, LearnDash --- ### [Share LearnDash Quiz Results with Students & Educators](https://www.uncannyowl.com/share-learndash-quiz-results-with-students-educators/) **Published:** February 29, 2024 **Author:** Brendan Da Costa **Content:** *Give your students a new way to study and learn. Share LearnDash quiz results directly with students and give group leaders access to insightful quiz reports with Uncanny Groups, Tin Canny Reporting and Uncanny Automator.* Are you looking for a way to share your students’ quiz results? Or, maybe you want to give your group leaders and educators access to powerful reporting tools so that they can analyze quiz data. Regardless of the reason, if you want to do more with your LearnDash quiz results, you’ve landed on the right page. In this article, we’ll show you how three plugins—[**Uncanny Groups**](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/#pricing), [**Tin Canny Reporting**](https://www.uncannyowl.com/downloads/tin-canny-reporting/#pricing), and [**Uncanny Automator**](https://www.automatorplugin.com/pricing)—can help you make the most of your LearnDash data. Let’s get to it. ## **Introduction** In this article, we’ll show you a handful of different ways to use your LearnDash data to empower group leaders and educators and optimize student learning. By the end of this article, you’ll have solutions for: - sharing quiz records with students and instructors via email, and/or private message in **[BuddyBoss](https://www.uncannyowl.com/share/buddyboss/)**, **[SMS](https://automatorplugin.com/share/twilio/)**, **[WhatsApp](https://automatorplugin.com/share/whatsapp/)**, and more, - building your own quiz reports in **[Google Sheets](https://automatorplugin.com/share/google/)** and/or **[Airtable](https://automatorplugin.com/share/airtable/)**, - making essays and assignments easier for educators to access and grade via front-end tools, - analyzing quiz question quality to improve question sets, and - reviewing results in front-end reports. We’re certain that you’re eager to learn more about implementing these solutions, so let’s take a closer look at the plugins we’ll be using. ## [Uncanny Automator](https://www.automatorplugin.com/pricing) [**Uncanny Automator**](https://www.automatorplugin.com/pricing) is the #1 automation and integration plugin for WordPress websites. Using simple combinations of triggers and actions, you can create seamless workflows across your entire website. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/automator-homepage.png) When it comes to disseminating LearnDash quiz data, Automator offers unparalleled flexibility. Instantaneously share quiz results with students, group leaders and/or administrators across any number of your chosen platforms, including emails, **[BuddyBoss](https://www.uncannyowl.com/share/buddyboss/)**, **[Slack](https://automatorplugin.com/share/slack/)**, **[WhatsApp](https://automatorplugin.com/share/whatsapp/)**, **[Twilio](https://automatorplugin.com/share/twilio/)** and more. In later sections, we’ll show you how simple it is to integrate your LearnDash LMS with your communication and reporting tools of choice. For now, **[grab your Automator Pro license and unlock a whole world of WordPress possibilities.>>>](https://www.automatorplugin.com/pricing)** ## [Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/#pricing) LearnDash Groups are an essential component of any LearnDash-powered elearning platform. For those administrators looking to improve the student and educator experiences, however, the [**Uncanny Groups**](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/#pricing) plugin adds invaluable features. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/uncanny-groups-for-learndash-homepage.png) Uncanny Groups gives LearnDash Group leaders, students and administrators new tools such as: - front-end group reporting, including essay and assignment management, - control for Group Leaders to add, edit and remove users, - individual and group sales for ecommerce (sell licenses to organizations and schools that they can manage themselves!) - progress overrides and, - optional email capabilities for Group Leaders. [**Get your Uncanny Groups license now so you can implement better reporting solutions.>>>**](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/#pricing) ## [Tin Canny Reporting](https://www.uncannyowl.com/downloads/tin-canny-reporting/#pricing) [**Tin Canny**](https://www.uncannyowl.com/downloads/tin-canny-reporting/#pricing) is a powerful plugin, optimally designed to revolutionize the way elearning platforms track, disseminate and analyze data within their LMS. Developed with a focus on user-friendly functionality and robust data insights, Tin Canny puts detailed LearnDash data at your fingertips. You can also leverage SCORM / xAPI records and H5P data to drill down into quiz-level analytics and/or get summary level data. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/tin-canny-homepage.png) With Tin Canny Reporting, users can seamlessly extract, manipulate, and visualize data from their LMS in as many ways as they choose. Whether it’s monitoring learner progress, assessing course effectiveness, evaluating engagement metrics or drilling down into quiz questions, Tin Canny Reporting provides the tools you need. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/tin-canny-recent-activities-report.png) Empower your educators and administrators with Tin Canny Reporting to gain deeper insights into your LearnDash data. [**Get Tin Canny Reporting now to optimize your student learning and group management experience.>>>**](https://www.uncannyowl.com/downloads/tin-canny-reporting/#pricing) ## **Send Students a Copy of Their LearnDash Quiz Results with Automator** Quiz data can be an invaluable study aid for students and an important resource for educators. Automator puts that all-important quiz data right at your fingertips to disseminate as you choose. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/email-learndash-quiz-results-to-students.png) In the Automator recipe pictured above, for example, we’re able to email quiz results directly to our students so that they can keep a record for themselves as a study guide for later on. We can then use features like [*tokens*](https://automatorplugin.com/action-tokens/) and [*filters*](https://automatorplugin.com/knowledge-base/action-filters-conditions/) to customize the email content (including which datum to send) and create a personalized learning experience. Additionally, we can use Automator to help our students find immediate remedial assistance. For example, in the recipe pictured below, we’re able to notify a student’s group leader if/when they fail a quiz. Using tokens, we can include information about the student’s quiz experience—such as how long it took them to complete the quiz and the number of times they’ve attempted it—to help group leaders give their students the assistance they need. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/notify-learndash-group-leaders-about-quiz-fail.png) Recipes like these ones are just simple examples of how you might choose to share LearnDash quiz data with your students and educators. You can even integrate quiz results into your CRM, such as **[ActiveCampaign](https://www.uncannyowl.com/share/activecampaign)**, **[Groundhogg](https://automatorplugin.com/share/groundhogg)** and **[HubSpot](https://automatorplugin.com/share/hubspot/)** to launch personalized engagement and improvement campaigns. Want to give your students even more options for reviewing their LearnDash data? Scroll down to the **[Front-End Reports section](#anchor)** for solutions that keep your students on your LearnDash-powered site. ## **Create Custom LearnDash Reports in Google Sheets and Airtable with Automator** External apps such as Google Sheets and Airtable allow you to perform powerful analyses of your LearnDash quiz data. With Automator, you can easily send all of your quiz results to these analysis-focused apps to keep track of your metrics, create custom reports and optimize your quizzes for student learning. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/connect-learndash-to-google-sheets.png) In the recipe pictured above, for example, we’re able to store all of our students’ quiz attempts in Google Sheets. We can store minute data such as their answers to specific questions and broader data such as the number of correct answers. Keeping track of metrics such as the average amount of time it takes our students to complete a quiz and the number of attempts they’ve made can help us to optimize our quiz content. Additionally, Automator allows you to store your LearnDash quiz data in a relational database like Airtable so you can visualize quiz results in any number of ways. Click the image below to learn how to connect your WordPress website to Airtable. [](https://automatorplugin.com/connect-your-wordpress-website-to-airtable-with-automator/) **[Connect Your WordPress Website to Airtable with Uncanny Automator>>>](https://automatorplugin.com/connect-your-wordpress-website-to-airtable-with-automator/)** ## **Front-End Essay and Assignment Management with Uncanny Groups** Particularly in B2B sales, LearnDash group leaders often need greater access and control over their group’s content than administrators can reasonably give. Fortunately, Uncanny Groups takes essay question and assignment access and grading out of the back-end of your WordPress website (i.e., out of /wp-admin/) and puts it comfortably on the front-end. Using a simple shortcode, you can give your LearnDash group leaders greater control of essay questions and assignments. [**Essay Question Management**](https://www.uncannyowl.com/knowledge-base/front-end-essay-question-management/)**:** With the front-end management solution, group leaders can review essay questions submitted by users in their group, access the associated lesson, course, quiz or comments, grade and assign points to essay questions submitted by users in their group, and do a whole lot more. [](https://www.uncannyowl.com/wp-content/uploads/2019/02/essay-questions.png) [**Assignment Management**](https://www.uncannyowl.com/knowledge-base/front-end-learndash-assignment-management/)**:** Similarly, with the front-end management solution for assignments, group leaders can download and review assignments submitted by users, approve and assign points to assignments submitted by users, filter assignments by group, course, lesson and status (approved/not approved), and do a whole lot more. [](https://www.uncannyowl.com/wp-content/uploads/2019/02/assignment-management.png) ## **Front-End Reporting with Tin Canny** Tin Canny puts versatile user, group, course and even question level reports directly on the front-end of your LearnDash-powered WordPress website. Click the links below to learn how to implement these solutions on your site for your students, group leaders and administrators. (Spoiler Alert: you’ll only need to copy and paste a shortcode or two!) [**LearnDash Quiz Question Report**](https://www.uncannyowl.com/knowledge-base/learndash-quiz-question-analysis-report/)**:** Ever wanted to optimize your LearnDash quiz questions? Want to know which single-choice, multiple-choice or true/false questions are too difficult or too easy? The Quiz Question Analysis Report gives LearnDash group leaders and WordPress administrators question-level data so they can optimize questions and improve student learning. [](https://www.uncannyowl.com/wp-content/uploads/2022/03/LearnDash_Quiz_Question_Analysis.png) [**Front-End Quiz Report for Group Leaders**](https://www.uncannyowl.com/knowledge-base/front-end-quiz-reports/): The front-end Quiz Report allows administrators and group leaders to view consolidated quiz data. If you’ve enabled quiz statistics, there will also be a link to detailed quiz results for that user and quiz attempt. [**Front-End Quiz Report for Students**](https://www.uncannyowl.com/knowledge-base/front-end-quiz-reports/)**:** The User Quiz Report outputs LearnDash quiz scores across all courses for the user viewing the page. This report can be used by students, Group Leaders and administrators to see a consolidated list of results. [](https://www.uncannyowl.com/wp-content/uploads/2018/07/tincanny-user-quiz-report.png) [**Detailed Quiz Report**](https://www.uncannyowl.com/new-learndash-quiz-report/)**:** If educators need to see all data for a quiz, across all courses and groups, the Detailed Quiz Report is the best option. This report outputs all quiz attempts by all students, and shows the most complete set of results for a specific quiz. [](https://www.uncannyowl.com/wp-content/uploads/2024/02/LearnDash-Detailed-Quiz-Report.png) ## **Conclusion** In this article, we introduced you to Uncanny Automator, Uncanny Groups and Tin Canny Reporting; three powerful tools for gathering, disseminating and analyzing your LearnDash quiz data. We showed you some of the simple ways to share quiz data with your students and group leaders and store it in external apps such as Airtable. Next, we covered some of the versatile reporting features of Uncanny Groups and Tin Canny, including the types of data that you can collect and where you can include these reports. Hopefully, you’re now feeling confident in your ability to gather the elearning data that matters most to you and your students. However, if you’re uncertain how exactly to generate the kind of data that you’re looking for, drop us a line in the comments section below. Until then, happy learning! **Categories:** Best Practices, LearnDash, Tin Can, Uncanny Automator --- ### [2023 - Year in Review](https://www.uncannyowl.com/2023-year-in-review/) **Published:** December 21, 2023 **Author:** Ryan Moore **Content:** 2023 has been a huge year for Uncanny Owl and there’s a lot for our team and customers to celebrate. From plugin releases to WordCamp Europe to customer support, the year was packed with milestones and accomplishments. 🥳🥳 ### Plugin releases So far in 2023 we have released a total of **90** plugin updates, with 1 or 2 more expected before year-end. (Yes, that does mean we released a plugin update more frequently than once every 3 business days!) Here’s the breakdown: - [Uncanny LearnDash plugins](https://www.uncannyowl.com/plugins/): 41 releases - [Uncanny Automator](https://wordpress.org/plugins/uncanny-automator/): 30 releases - [Uncanny Automator Pro](https://automatorplugin.com/pricing/): 17 releases - New [Custom User Fields Addon for Automator](https://automatorplugin.com/custom-user-fields-addon/): 2 releases - New [Restrict Content Addon for Automator](https://automatorplugin.com/restrict-content-addon/): 1 release Every single one of our plugins gained new features this year. Here are some of the highlights: - Uncanny Automator: Webhook retries and response support, [new log system](https://automatorplugin.com/automator-4-15-logs-gpt4-charitable-msteams/), [robust OpenAI support](https://automatorplugin.com/integration/openai/), [>30 integrations](https://automatorplugin.com/integrations/) - Uncanny Automator Pro: [User Loops](https://automatorplugin.com/knowledge-base/user-loops/), [Post Loops](https://automatorplugin.com/knowledge-base/post-loops/), [Run Now](https://automatorplugin.com/knowledge-base/run-now/), [the Formatter](https://automatorplugin.com/knowledge-base/the-formatter-action/) - Uncanny Toolkit Pro: New modules for [Drip Topics by Group](https://www.uncannyowl.com/knowledge-base/drip-topics-by-ldgroup/), [Bulk Certificate Download](https://www.uncannyowl.com/knowledge-base/download-certificates-in-bulk/), [Autocomplete on Fluent Forms](https://www.uncannyowl.com/knowledge-base/ffforms-auto-completes-lessons-topics/) and [Formidable Forms](https://www.uncannyowl.com/knowledge-base/formidable-auto-completes-lessons-topics/) submission - Tin Canny Reporting: New module upload system, new [lesson and topic completion reports](https://www.uncannyowl.com/knowledge-base/lesson-and-topic-completion-reports/) - Uncanny Groups: [Manage group hierarchy relationships in the front end](https://www.uncannyowl.com/uncanny-groups-5-4-front-end-group-hierarchy-management/), [new front end edit group wizard](https://www.uncannyowl.com/uncanny-groups-new-edit-group-wizard/), email support for child groups, [set fixed group price and minimum/maximum seat quantities](https://www.uncannyowl.com/knowledge-base/creating-pre-configured-learndash-group-licenses/#fixed-pricing-and-quantity-overrides) - Uncanny Codes: Support for replacing, cancelling & deleting individual codes Those are just the biggest new features, of course; changelogs across our various releases had over 650 total entries. For Automator plugins alone, there were over 250,000 code changes! 🤯 The [Automator 5.0 releases](https://automatorplugin.com/introducing-loops/) along with its two new addons represented a big expansion of Automator’s capabilities, evolving it from a pure integration and workflow tool toward a complete WordPress site development platform. Where customers used to think, “How can I connect these 2 things together?”, it’s starting to shift to, “Do I really need all these other things anyway if Automator and its addons can do it all for me?” [](https://www.uncannyowl.com/wp-content/uploads/2023/12/Automator-Loop-Email-Notification.png) In addition to the work on our own plugins, our developers made core contributions to *several* releases of WordPress itself! 👊 ### Plugin support Our Help Desk has been busier than ever, sending over 14,000 replies (from January 1 to November 30) and resolving well over 6,000 tickets. Here are just a few of the comments from customers this year: - *You responded very quickly, took my ticket seriously… and offered me a solution within 24 hours. Thank you for great customer service!* - *These guys just get better and better. Very glad I chose Uncanny Owl.* - *This is probably the most thorough, specific and tailored technical assistance I’ve ever had from a plugin support team.* - *Far beyond what I was actually expecting. \[Uncanny Owl\] went the extra mile and assisted me with a mostly unrelated issue that will save me quite a bit of time in my general business.* - *I am blown away by the capabilities of this plugin. I have been able to achieve things across multiple sites that I didn’t think possible. It was simple to use and when I did hit a snag, the support was incredible. They did everything they could to drill down on the issue.* - *Outstanding – fast, competent, responsive. Superb as ever.* - *More great support from Uncanny Owl – consistently some of the best customer service I’ve encountered in any industry. Great work guys.* - *These guys are just unreal – SUCH an impressive level of support and expertise. Truly exceptional. Keep up the great work, y’all. Cheers* - *You can remove the Help Scout form’s buttons for “okay” and “not good”. They seem unnecessary for a company like Uncanny Owl. 😉* - *The feedback received was clearly documented and helped a great deal with resolving multiple issues. Thank you very much! Ps. Your solution is amazing too 🙂* ### Install growth It was a big year for all of our plugins, but of course the star was [Uncanny Automator](https://automatorplugin.com/). We increased Automator’s install base by over 50%, moving from 20,000 active installs to over 30,000 in less than a year. It’s also up to over 750,000 downloads. While the install count is still just behind our [Uncanny Toolkit for LearnDash](https://wordpress.org/plugins/uncanny-learndash-toolkit/) plugin, Automator will eclipse the Toolkit in about 3 months. Beyond just the growth in the number of sites using Automator, we’ve also seen growth in how much Automator is used on each site. Over the past year, Automator users have run *over 50 million recipes* (and that’s just from sites that are sharing analytics data; the actual number is much higher)! The average site now also has over 5 active recipes (up from about 3.5 in 2022). [Uncanny Toolkit Pro for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) remains our most popular premium plugin, crossing the 8,000 sales threshold this year, and it’s thrilling that all of our premium plugins have now sold *thousands* of copies each! ### New plugins Late this year we were thrilled to announce 2 brand new plugins for Uncanny Automator: the Custom User Fields addon and the Restrict Content addon. [Custom User Fields](https://automatorplugin.com/custom-user-fields-addon/) makes it really easy to add new fields for user profiles, display and manage the data, and incorporate those fields into your Automator recipes. It’s also fully compatible with any other plugin that adds custom fields to user meta. [](https://www.uncannyowl.com/wp-content/uploads/2023/12/User-fields-for-WordPress-profiles.png) [Restrict Content](https://automatorplugin.com/restrict-content-addon/) is a simple but powerful plugin that makes it easy to set up access/membership levels, manage them for users, then control access to blocks, posts, pages, and shortcode content. It’s all tightly connected to Automator, so it’s easy to manage access levels using recipes. [](https://www.uncannyowl.com/wp-content/uploads/2023/12/WordPress-Access-Levels.png) Both are free tools for anyone with a [Business or Agency annual license for Automator](https://automatorplugin.com/pricing/). ### Plugin ratings Beyond the feedback we received in our Help Desk, Uncanny Automator and the Uncanny Toolkit received lots of new [5-star reviews on WordPress.org](https://wordpress.org/support/plugin/uncanny-automator/reviews/?filter=5). In fact, over 97% of reviews in 2023 were 5 stars! Here’s a sample of some of the feedback we received: - *We had a quote for customisation – approx £2,500 – way out of our reach as a tiny charity. But a few days work with Uncanny Automator Pro, MemberPress, Google Sheets and MailChimp and we have a fully functional automated system for a fraction of the cost, and we’re identifying other opportunities on a daily basis.* - *WOW! It was the best decision ever. This PLUGIN is great, I’m in love with the things you can do and to be honest I haven’t explored half of it.* - *This plugin has been absolutely brilliant, any automation process I’ve needed it has fulfilled. Without a doubt, I’d recommend this plugin to anyone that needs automation built into their WordPress site.* - *Uncanny Automator is super powerful with so many integration one can not fathom how powerful this plugin can be. It is definitely one of my top 3 plugins to install on all my WordPress websites.* - *This is a MUST HAVE plugin for any WordPress site, especially those utilizing LMS or WooCommerce!* It’s also been a thrill to be featured on more “best WordPress plugins” lists than we can count! 😎 ### New content It’s been a busy year for the writers at Uncanny Owl, with more than enough new blog posts and knowledge base articles to fill a book or two. In our goal to make our plugins as useful and well documented as possible, we published over 60 new [blog posts for Uncanny Automator](https://automatorplugin.com/blog/), a dozen for [Uncanny Owl](https://www.uncannyowl.com/uncanny-blog/), plus several dozen new Knowledge Base articles. We know that all of the new content is helpful, but we’re also aware that it makes discovery challenging and that it’s a lot of text to go through. With almost 250 total Knowledge Base articles, in 2024 we’ll implement more ways to quickly find content that’s relevant to you. ### Team meetups In our first big meetup post-COVID, most of the Uncanny team was able to travel to Athens in June for WordCamp Europe. It was an incredible opportunity for our team, families and peers to connect in a gorgeous location. From left to right, here’s a picture of David, Ken, Dani, Brendan, Nastia, Agus, Manal, Saad and Ryan in front of the Athens conference centre: [](https://www.uncannyowl.com/wp-content/uploads/2023/12/WCEU-2023-Uncanny-Team-1.jpeg) For even more details about our WordCamp Europe adventure, check out the full [blog post](https://automatorplugin.com/wordcamp-europe-2023/). In December, we met up with the Toronto-area team for lunch and some bowling. In 2024 we’ll get more of the team over to Canada for a meetup in May! [](https://www.uncannyowl.com/wp-content/uploads/2023/12/Uncanny-Holiday-Lunch.jpg) ### What’s next for 2024? We’ve made some tremendous advances in 2023 that will allow us to push the boundaries of WordPress automation in 2024. While we typically don’t talk about what’s coming, certainly some of our priorities will be obvious, including: - Recurring recipes, scheduled recipes, and better support for nesting of conditions, delays and loops. - Another addon or two for Automator. - Lots of new integrations, surpassing the 200 mark in the next few months. - An overhaul of this website, because yes, we know that it’s very, very overdue. We also expect to expand the team in early 2024 to grow our capabilities related to support, front end development and LearnDash development. If you’re interested, you know where to [find us](https://www.uncannyowl.com/contact-us-2/)! **Categories:** News, Uncanny Automator, Uncanny LearnDash Toolkit --- ### [How to Reset LearnDash Course Progress](https://www.uncannyowl.com/how-to-reset-learndash-course-progress/) **Published:** November 14, 2023 **Author:** Brendan Da Costa **Content:** *Let’s go back to the beginning! Reset LearnDash course progress with Uncanny Automator for all of your compliance, education, training and certification needs.* Going back to where you started isn’t always a bad thing. Just think of what happens every time you pass “Go” in Monopoly! LearnDash LMS users know, better than most, the value of starting over again. Especially in the realms of compliance training and recertification, the ability to hit the reset button is vital for learners and administrators alike. That’s why so many LearnDash users trust [**Uncanny Automator**](https://www.automatorplugin.com). In this comprehensive guide, we’ll walk you through the step-by-step process of resetting your LearnDash users’ progress with the #1 teacher’s assistant, Uncanny Automator. Provide your learners with the chance to start their educational journeys anew while simultaneously streamlining tasks for your busy course administrators. Without further ado, let’s push that reset button! ## [Uncanny Automator](https://automatorplugin.com/pricing) for LearnDash LearnDash is the #1 LMS for WordPress users. Likewise, [**Uncanny Automator**](https://www.automatorplugin.com) is #1 automation and integration tool for WordPress. Together they make an unbeatable elearning platform! Using combinations of triggers and actions, Automator can help you streamline your administrative workflows, save time and reduce costs. Furthermore, Automator seamlessly integrates LearnDash with all of your other favorite apps and plugins. This means that you can connect course progress to your CRM, ecommerce platform and even external apps like Google Sheets. Resetting course progress is an Automator Pro feature, meaning that you’ll need to get a Pro license. Fortunately, a Pro license unlocks tons of powerful features that will make managing your LearnDash courses much easier. Take advantage of a 14-day money back guarantee and [**get started with Automator Pro so you can follow along.>>>**](https://www.automatorplugin.com) ## [Uncanny Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/): Create a Permanent Record of Course Completions We know that just because you want to reset a user’s course progress in LearnDash doesn’t mean that you don’t want to keep some record of their academic progress. That would be like giving up all of your Monopoly money every time you passed “Go”! For this reason, we have developed the [**Uncanny Continuing Education Credits**](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) plugin (Uncanny CEUs). This plugin has tons of amazing features for the LearnDash LMS but the standout feature is its ability to create a permanent record. Uncanny CEUs stores LearnDash course completions independently of LearnDash itself. This means that you can reset course progress as many times as you want and still maintain a record of your users’ course completion. For WordPress developers and/or educators with more than one LearnDash site, we highly recommend getting the Uncanny CEUs plugin as part of [**Uncanny Toolkit Pro All Access Pass**](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/). In addition to all of the amazing features in Uncanny CEUs, you’ll also gain access to Tin Canny, Groups, and Codes along with a whole suite of powerful modules. ## **Reset LearnDash Course Progress for Compliance Training** One of the many reasons why you might want to reset your users’ LearnDash course progress is for annual compliance training purposes. With Uncanny Automator, you can easily reset LearnDash course progress for multiple users with the click of a button. In the recipe pictured above, we’re able to single out all of our LearnDash users with a specific email domain and reset their course progress in bulk. In the next steps, we’ll walk you through how to recreate that recipe—and how to customize it to suit your learners’ needs! **Step 1: Create and Name a New Recipe** From your WordPress Admin Sidebar, navigate *Automator* > *Add New*. In the pop-up window that appears, select *Everyone*. Give your new recipe a name that makes it easy to recognize at a glance. For example, we’ve named this recipe *Reset LearnDash Course Progress: Compliance Training*. **Step 2: Configure Your Trigger(s)** In the *Triggers* panel, from the menu of available integrations, select **Run now**. From the drop-down list that appears, select *Trigger recipe manually*. **Step 3: Configure Your Action(s)** In the *Actions* panel, click **Add** > **User loop**. In the *Loop* panel, click **Add action** and select **LearnDash** from the menu of available integrations. From the drop-down list that appears, select *Reset the user’s progress in a course*. You can also select *Reset the user’s progress for all courses associated with a group* if your compliance training consists of more than one course. Automator will prompt you to select a course. Once you’re finished, click **Save**. Your *Loops* panel should look something like this: **Step 4: Add a Filter** By default, Automator will reset the course progress for all users who are not Administrators. More often than not, however, you’ll want to target a specific subset of users. You can do this using *filters*. In our example, we’re targeting a subset of users from a particular organization using their email domain. To add a filter, hover over the LearnDash action and click **Filter**. A window, labeled *Condition*, will appear. Select *A token meets a condition*. A new window, labeled *Configure the rule*, will appear. In the field labeled *Token* click the **Asterisk** and select *User email*. (Note: In Automator, *tokens* are dynamic data pulled from your WordPress website or even from within recipes.) After selecting the *User email* token, you can fill out the remaining fields, *Criteria* and *Value*, to target specific users. Once you’re finished, click **Save filter**. **Step 5: Hit the Reset Button!** You’re just about to reset your users’ LearnDash progress. All that’s left for you to do, is to click the **Run now** button! Whoever said that there are no “do-overs” in real-life never used Uncanny Automator! In fact, there’s more than just one way to reset LearnDash course progress with Automator. ## **Reset LearnDash Course Progress Individually** You won’t always want to reset your LearnDash users’ course progress in bulk. Even if you are running a compliance training program, you may have users with individualized learning schedules. Fortunately, there’s an Automator recipe for that too! With the recipe pictured above, we’re able to reset LearnDash course progress on an individual basis, one year after each user completes the course. Here’s how to recreate this recipe. **Step 1: Create and Name a New Recipe** From your WordPress Dashboard, navigate to *Automator* > *Add New*. In the pop-up window that appears, select *Logged-in users*. We’ve named this recipe *Reset LearnDash Course Progress Individually*. **Step 2: Configure Your Trigger(s)** In the *Triggers* panel, from the menu of available integrations, select **LearnDash**. From the drop-down list that appears, select *A user completes a course*. Automator will prompt you to select a course. Once you’re finished, click **Save**. **Step 3: Configure Your Action(s)** In the *Actions* panel, click **Add action** and select **LearnDash** from the menu of available integrations. From the drop-down list that appears, select *Reset the user’s progress in a course*. Once again, Automator will prompt you to select a course. Once you’re finished click **Save**. **Step 4: Add a Delay** Likelier than not, you won’t want to reset the user’s LearnDash course progress immediately after they complete it. As such, we’ll need to add a *delay*. Simply hover over the LearnDash action and click **Delay**. A pop-up window will appear where you can set a delay or schedule a specific date and time to execute the action. In our example, we’ve configured a one-year delay. Once you’re finished, click **Set delay**. **Step 5: Go Live!** Recipes that don’t use the **Run now** trigger can either be in *Draft* or *Live*. To automate the reset process, simply toggle the recipe from *Draft* to *Live*. With this recipe, you can set individualized learning schedules for your WordPress users. But, trying to remember all of those dates can be a challenge. Once again, Automator is there to help. You can add reminders for you and your LearnDash users with your CRM of choice or take advantage of Automator’s built-in **Emails** integration. ## **Reset LearnDash Course Progress with Ecommerce** Automator also allows you to integrate your ecommerce platform, such as **WooCommerce**, with LearnDash. A recipe like the one pictured above is great for certification purposes. Every time a user purchases access to a certification course, Automator will reset their course progress. Try adding filters and delays to a recipe like the one pictured above in order to suit your learners’ needs. ## **Conclusion** Hopefully, now, you have everything you need to reset LearnDash course progress in whichever way suits your workflows. Whether you want to reset users’ progress in bulk, individually or in connection with other actions on your WordPress website. If you have any questions, don’t hesitate to drop us a line in the comments section below. Until then, just remember: it’s never too late to hit the reset button as long as you have Automator at your fingertips! **Categories:** Uncanny Automator --- ### [Uncanny CEUs: LearnDash Credit Report overhaul](https://www.uncannyowl.com/uncanny-ceus-learndash-credit-report-overhaul/) **Published:** November 8, 2023 **Author:** Ryan Moore **Content:** WordPress sites offering continuing education credit programs with [LearnDash](/share/learndash/) tend to collect a lot of data about course completions. Our [Uncanny Continuing Education Credits plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) makes it easy to track and manage CEUs and other credits, but over time, all of the user activity can generate a lot of data, sometimes tens of thousands, or even hundreds of thousands, of records. Loading this volume of data in a single report can sometimes be taxing on site resources, so in today’s Uncanny Continuing Education Credits 4.1 release, we’re excited to offer new reporting solutions targeted at performance. ### Faster LearnDash credit reports In the Uncanny CEUs 4.1 release, you’ll see a new Credit Report Settings section under Uncanny CEUs > Settings in /wp-admin/: [](https://www.uncannyowl.com/wp-content/uploads/2023/11/LearnDash-Credit-Report-Settings.png) Loading avatars for a large volume of users is slow, so you can disable that for better performance. Next we have 3 new options for “Report Mode”: - Legacy: The system and queries that existed before 4.1. Should only be used for compatibility, like if you customized report output and credit capture outside of our plugin. - Performance: The new default option, captures some data during user updates so some data is effectively “prefetched” and reduces user queries. - Ludicrous: Generates cached credit data hourly based on a cron, then loads the data from the cached record in the report. Can be refreshed on demand if data is stale. There are also new settings for Default Date Range and Default Page Length. Once again, loading less data when the report is first opened (with a smaller date range and a shorter default page length) can improve performance and reduce memory usage. ### Other LearnDash credit updates While the changes to the credit report are the biggest update in 4.1, there are also several important changes for [Uncanny CEUs](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) users: 1. There’s a new **Reset** button on the credit report page to reset filters. this makes it easier to generate new reports. 2. Dates and times are now aligned with LearnDash times. 3. There is better support in the reports when LearnDash is not active (yes, Uncanny Continuing Education Credits does *not* require LearnDash to be active, and can be used to capture credit data from other sources only, typically with Uncanny Automator acting as an intermediary). 4. There is improved PHP 8.2 compatibility to align with the LearnDash 4.10 release. 5. There are new filters available for awarding CEU certificates to allow email header overrides: uo\_group\_leader\_mail\_headers, uo\_admin\_mail\_headers and uo\_user\_mail\_headers. For full details about the changes, make sure to review the [Uncanny CEUs changelog](https://www.uncannyowl.com/knowledge-base/continuing-education-credits-changelog/). **Categories:** LearnDash, News --- ### [Uncanny Groups 5.4: Front End Group Hierarchy Management](https://www.uncannyowl.com/uncanny-groups-5-4-front-end-group-hierarchy-management/) **Published:** November 1, 2023 **Author:** Ryan Moore **Content:** We’re excited to announce the release of [Uncanny Groups 5.4](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/), which includes several significant new features for users of the #1 plugin for the sale, management and reporting of [LearnDash](/share/learndash/) groups. This release includes 5 key new additions to make group management even easier. ### Front End Group Hierarchy Management When group hierarchies are enabled in LearnDash settings, the Edit Group and [Create Group tools](https://www.uncannyowl.com/knowledge-base/front-end-learndash-group-creation/) in Uncanny Groups now support the ability to choose a parent for the selected group. To make this option available, just add the parent\_selector=”show” attribute to the shortcode, like this: \[uo\_groups\_create\_group parent\_selector=”show”\]. Once that’s done, a new drop-down list for the parent group selection will be added to the form: [](https://www.uncannyowl.com/wp-content/uploads/2023/11/Choose-a-Learndash-Parent-Group.png) For Group Leaders, of course, any group parent options must be groups that exist and the user must be a leader of the group. Group Leaders can only see groups that they’re associated with. This new functionality allows scenarios where Group Leaders have more control over their users, access and reporting. With the wizard to create a group enabled, Group Leaders could choose to set up new child groups for more granular access over courses and reporting rather than using a single large, top-level group. ### Group refund changes In previous versions of Uncanny Groups, the refund behaviour assumed that groups would always be fully refunded, so the group itself would no longer be needed and users would lose access. Based on customer feedback, we realized that this was not sufficient; more support was needed for partial refund scenarios as well as more control over what happened when an order was fully refunded. That led us to add the following changes to the Uncanny Groups > Settings page: [](https://www.uncannyowl.com/wp-content/uploads/2023/11/Refund-LearnDash-Groups.png) Now, when an order is partially refunded and the first option is checked, we will adjust the seat count for the associated group accordingly. And if the order is fully refunded, we can just move the group itself to the trash. ### Reset quiz retakes Our [Manage Learner Progress tool](https://www.uncannyowl.com/knowledge-base/manage-learner-progress/) is a really popular way for Group Leaders and admins to update and track user progress in the front end. While the ability to mark quizzes as complete or incomplete has existed for a long time, we didn’t offer a way to also reset *attempts* and records for a quiz. Where quiz retakes are limited, offering the option to reset attempts for a quiz became more important. Now, when a quiz is marked incomplete by a Group Leader or admin, they will be presented with this option: [](https://www.uncannyowl.com/wp-content/uploads/2023/11/Reset-LearnDash-Quiz-Attempts.png) Users can click “yes” to remove *all* records related to the quiz for a user, effectively allowing them to start over, or they can choose “no” to keep the records and simply mark the quiz as incomplete. ### Other updates The Uncanny Groups 5.4 release adds the ability for Group Leaders to also email users in *child* groups when emails are sent from the parent group. This functionality relies on our [Email Users tool](https://www.uncannyowl.com/knowledge-base/group-management-page/#emailing-group-members), and when a group has child groups, the following checkbox will be added to the modal window to email users: [](https://www.uncannyowl.com/wp-content/uploads/2023/11/Send-emails-to-child-group-members.png) Finally, we have relaxed requirements for the upgrade and downgrade functionality on group edit pages in /wp-admin/. (Upgrades and downgrades refer to adding support for seats and enrollment keys to LearnDash groups.) All groups, regardless of how they were created, can now be upgraded or downgraded. That covers the highlights of the new [Uncanny Groups 5.4 release](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/), but for full details of the changes, please see the [changelog](https://www.uncannyowl.com/knowledge-base/uncanny-learndash-groups-changelog/). **Categories:** LearnDash --- ### [Uncanny Groups: New Edit Group Wizard](https://www.uncannyowl.com/uncanny-groups-new-edit-group-wizard/) **Published:** August 15, 2023 **Author:** Ryan Moore **Content:** The [Uncanny Groups for LearnDash 5.3 release](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) is now available! This update to our popular group management plugin for LearnDash adds 1 key new feature: a way to edit LearnDash groups in the front end. It’s an optional new tool that will make group edits a lot easier for many sites (and reduce the need for admin support). ### Edit LearnDash Groups in the Front End Uncanny Groups has supported [front end LearnDash group creation](https://www.uncannyowl.com/knowledge-base/front-end-learndash-group-creation/) for several years. Group editing was a much more difficult piece to tackle, as we had to consider implications for groups created via ecommerce, how to limit course access, what fields should and shouldn’t be available for editing, etc. In the 5.3 release, we’re adding a new shortcode and a new Gutenberg block to make group editing possible. Here’s the shortcode and the attributes it supports: ``` [uo_groups_edit_group group_name="show" total_seats="show" group_courses="show" category="" course_category=""] ``` There’s a lot to explain here, so let’s tackle each attribute. The first attribute, group\_name, determines whether or not the user editing the group (i.e. the Group Leader or admin) can modify the group name from the group edit page. If the group supports seats, the total\_seats attributes determines whether or not the user editing the group can change the number of seats for the group (keep in mind, of course, that the number cannot be less than the number of students in the group. The next attribute, group\_courses, allows Group Leaders or admins to change (so add or remove) courses from the group. But which courses are available to the group? That’s where the category and course\_category attributes come in; when included in the shortcode or block, *only* courses matching the category or course\_category settings will be available. (To include multiple categories, separate the category slugs by comma.) Here’s what a group edit page that supports changing name, seats and courses looks like: [](https://www.uncannyowl.com/wp-content/uploads/2023/08/Edit-LearnDash-Groups.png) ### Link LearnDash Group Editing to Group Management You’re probably now wondering how you choose a group to edit and how your Group Leaders will find this tool. There are 2 steps to enabling the optional front end group editing tool on your website: 1. Create a new page with the \[uo\_groups\_edit\_group\] shortcode. 2. Update your Group Management page shortcode to link to the group edit page. To link the Group Management page to the edit group page, there’s a new attribute for \[uo\_groups\], so it must be updated to look like this: ``` [uo_groups edit_url="/front-end-learndash-group-edit/"] ``` The edit\_url attribute defines where the edit group page set up in the section above is located. When it’s defined, the Group Management page will display an **Edit group** button next to the group name. It will look like this: [](https://www.uncannyowl.com/wp-content/uploads/2023/08/Edit-Group-button.png) The Edit Group feature is a really powerful new addition for Uncanny Groups, and we hope you find it useful. ### Other Uncanny Groups additions The new Edit LearnDash Group wizard is certainly the highlight of [Uncanny Groups 5.3](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/), but there are a number of new important enhancements. There’s better support for formatting when RTL languages are used, the “Add and invite users” is set as the default option when users are imported via CSV file (for consistency with other methods to add users). We hope you find the additions useful! **Categories:** LearnDash --- ### [Better Notifications for LearnDash](https://www.uncannyowl.com/better-notifications-for-learndash/) **Published:** February 5, 2023 **Author:** Brendan Da Costa **Content:** *With the LearnDash Notifications add-on and Uncanny Automator, students and staff can stay in touch, communicate more and learn together.* In self-directed elearning courses, it can be difficult for instructors to stay engaged with their students. While reports help instructors gather summary-level details on their students’ progress, they don’t keep educators in the loop as the learning unfolds. The LearnDash Notifications Add-On, however, addresses some of the challenges associated with real-time feedback. Even so, the LearnDash Notifications Add-On can’t quite always accommodate the needs of both students and instructors. For example; how do students become aware of new course availability, new feedback from instructors, or new group discussions? To promote engagement and increased learning, elearning websites require a way to reach out to students beyond the website itself. Whether you’re looking to enhance the LearnDash Notifications Add-On or replace it altogether, you’ve found the perfect solution. ### LearnDash Notifications Add-On In the LearnDash ecosystem, the easiest and most common way to send notifications to students and instructors (typically “Group Leaders” in LearnDash) is by email using the free LearnDash Notifications Add-On. It’s a powerful add-on that allows key LearnDash events, like course completion or assignment approval, to trigger email notifications to students, Groups Leaders and administrators. And with the new (at the time of publication) 1.6 release, it even adds conditions, so you can choose to send notifications only to users in certain groups, who have not completed a quiz, who are enrolled in a course, etc. LearnDash Notifications is a great plugin that supports email notifications for a variety of scenarios, and since it’s free, it makes sense to use it on most LearnDash sites. It even has support for dozens of shortcodes so that you can include dynamic content (like the user’s name or course name) in the emails.  With over 15 trigger types, a dozen conditions and dozens of shortcodes, there’s support for the most common email notification scenarios. But what if you want to reach out to students via more than just email? And what if instead of a few dozen options, you had hundreds of triggers, multiple communication channels and thousands of conditions? ### Enter Uncanny Automator Uncanny Automator is our no-code automation platform for WordPress that we originally created as a way to personalize elearning for LearnDash. A little more than five years later, it has evolved into a robust system that connects LearnDash activity to more than 100 other plugins and apps. If the LearnDash Notifications Add-On gives you the ABCs of email notifications, then Uncanny Automator gives you the post-doctoral thesis in elearning linguistics. But while an actual PhD in linguistics night cost you an arm and a leg, there’s even a FREE version of Automator that connects some of the core LearnDash (and other plugins!) triggers to email and other channels! ### More triggers The LearnDash Notifications Add-On covers 15 basic scenarios. But what if you wanted more? Uncanny Automator gives you the ability to customize your LearnDash notifications, far beyond what the LearnDash Notifications Add-On can do. These are just some of the notifications you can send with Automator: - A user achieves a percentage, score or point value above or below a certain amount (“passing” or “failing” a quiz is great, but what if you want certain notifications based on score instead, like maybe notify the Instructor the first time only that someone gets a perfect score on a quiz?) - A new course, lesson or topic is created–or perhaps a new course is added to a group - A Group Leader is added or removed from a Group (keep other instructors in the loop about teaching staff changes) - A user completes a group’s courses - A user is removed from a group or course But that’s just the start. No LearnDash site runs with the LearnDash plugin alone; it takes several, maybe even dozens, of plugins to run a LearnDash site effectively. Want to know when new feedback forms are submitted for your course, but only on completion of the course? Here’s a recipe that notifies Group Leaders when the feedback form has been submitted and the user has completed the course:  Maybe Group Leaders need to know when students have attended a live onboarding seminar that also enrolls the student in the next course? There’s a recipe for that too:  Perhaps students receive a special certificate of congratulations after attending a live event that follows a course, so both LearnDash course completions and the Group Leader marking them attended triggers a special certificate:  ### More channels Sending email notifications is great, but what if it’s not the best or only way to reach your students? By connecting LearnDash to Uncanny Automator, you can open up new channels of communication with your staff and students. If your instructors work at a large institution, they’re likely flooded with emails everyday—and sending even more emails only results in more noise that gets ignored. But, if you had a dedicated support channel in Slack, you could get live updates any time users in a particular group fail a quiz or receive a low grade:  Alternatively, certain scores on a quiz might open a ticket directly in your Help Desk system so important updates are easily tracked and followed up on. And one of our favorite examples for students who prefer more social messaging applications such as WhatsApp, SMS messages via Twilio or forums and groups in BuddyBoss, you can celebrate student achievements by sharing them with other students and staff. Perhaps, like in the example below, your students can celebrate their course completion or high grades in a specific group’s activity feed in BuddyBoss (and add multiple triggers to mark each accomplishment):  With your students’ consent (perhaps via an opt-in form when they register), some site admins might even choose to share key accomplishments such as certification on social media in a private Facebook group. ### More conditions Adding filters to notifications is a great way to ensure that notifications only go to the right people at the right time. Conditions are a very recent addition to the LearnDash Notifications Add-On, and at the time of writing, supported conditions are: - User is enrolled to a group - User is enrolled to a course - User has completed a course - User has completed a lesson - User has completed a topic - User has submitted a quiz - User has completed a quiz - Essay has just been submitted - Essay question has just been put into graded status - User has uploaded an assignment - User’s assignment has been approved - User has not completed a quiz It’s a great list, and on the LearnDash side of things, it absolutely covers the highlights. So what can Uncanny Automator bring to the table that LearnDash Notifications doesn’t have? - A lot of “not” in or “not” completed conditions. Maybe a notification simply doesn’t apply to a tester group. Instead of explicitly adding all of the *other* groups to the notification, you can just say “this notification applies to everyone except members of this group”. - Group hierarchy support. Maybe you support a hospital network with multiple departments and divisions, and maybe a certain notification applies only to members of one specific organization. If they have 50 groups in their group hierarchy, and perhaps those groups sometimes change, managing notifications for those groups would be a nightmare. With Automator, you can just set up a condition to have a notification run for everyone in a selected group *and its children*. Of course, your LearnDash site is likely running more plugins than just LearnDash. What if you only want notifications to go out to users with a certain membership level in MemberPress, a matching WordPress role or a specific CRM tag via WP Fusion? No problem. Taking things a bit to the extreme, here’s a WhatsApp notification that will only go out to users with an uncannyowl.com email address that have an “opt-in” tag in FluentCRM and are active Platinum members in MemberPress:  You can keep notifications as simple or as advanced as you want in Uncanny Automator. You can even schedule and delay them. ### More data Suppose you want to send a confirmation notice to students when they complete a course—some type of congratulatory message. The LearnDash Notifications Add-On makes this really easy, and in the email you can include details like first name (or really any user data) as well as the course name. For many sites, this is enough. Uncanny Automator, of course, currently has support for over 5,000 unique tokens. Some are based on user and system data, some based on the trigger, others even based on data in other actions in the same recipe. Here are just a handful of examples of other types of data you could include in the notification above if you used Automator instead of the LearnDash Notifications Add-On: - The number of courses the user has completed. - Custom meta for the course, like continuing education credits earned, course duration or course author. - The course expiry date. Or you could just do more with it, like include a coupon code for the user’s next course purchase or attach a printable PDF certificate along with the notification. ### Get started for free Many of the notification types outlined in this article are fully available in the free version of Uncanny Automator and run without restrictions. Triggers related to quizzes and course, lesson and topic completions are unrestricted in the free version of Automator, as are sending emails to students, Group Leaders and admins. By signing up for a free account, you can also try out notifications via Slack, WhatsApp, Twilio and more with complimentary credits. With the right notification system in place, improved knowledge transfer and community building are just a few clicks away. Between the LearnDash Notifications Add-On and Uncanny Automator, LearnDash users have easy access to a class-leading notification system for elearning platforms. **Categories:** LearnDash, Marketing, Uncanny Automator --- ### [Tin Canny Update: New Uploader](https://www.uncannyowl.com/tin-canny-update-new-uploader/) **Published:** July 24, 2023 **Author:** Ryan Moore **Content:** Over the years, a common challenge elearning course authors have had with WordPress is uploading and managing really large files. It’s not uncommon to see xAPI and SCORM file sizes in the hundreds of MB, and a few weeks ago, we helped a user with a file that was over 5 GB in size. The WordPress upload system wasn’t really designed for files of this size, so a few months ago we started building a completely different upload system for our [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) users. ### Introducing the new Tin Canny Uploader We’re excited to include the new uploader in our [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) 4.3 release. This is what it looks like: [](https://www.uncannyowl.com/wp-content/uploads/2023/07/Tin-Canny-Uploader.png) How it works is *very* different than the uploader in previous versions. Instead of relying on WordPress to upload a huge file to the website, then unzip and process it, the new uploader uses your browser to inspect files in the zip folder and upload them individually. For large files, they are uploaded in chunks. This approach ensures that all files, regardless of size, and even if the web server doesn’t support unzip extensions, should work without issue. The new uploader works in all editors and page builders we currently support, as well as the Manage Content page in /wp-admin/. Modules uploaded with the previous tool will continue to work as before; the uploader will be used for new uploads. ### Reporting tabs are separate pages To help with some performance in the back end, reports in the Tin Canny menu (so the Course, User, Tin Can and xAPI Quiz report tabs) are now set up as separate pages rather than just different tabs on the same page. Everything will look the same and work the same way, but behind the scenes there are some different URLs (this may affect links if you used direct links to tabs in /wp-admin/). Those are the highlights for the 4.3 release. We hope you find the changes helpful! **Categories:** News, Tin Can --- ### [Tin Canny 4.2: LearnDash Lesson & Topic Reports](https://www.uncannyowl.com/tin-canny-4-2-learndash-lesson-topic-reports/) **Published:** April 19, 2023 **Author:** Ryan Moore **Content:** We’re excited to announce that [Tin Canny 4.2](https://www.uncannyowl.com/downloads/tin-canny-reporting/) is now available. It’s a big release with several new reports, performance improvements, new options for SCORM and xAPI users and some behind-the-scenes enhancements. ### Lesson and Topic Completion Reports We know that LearnDash site owners have faced challenges for years getting consolidated records for lesson and topic completions. For course completions, there are reports everywhere; we have different types of course completion reports in 3 of our plugins alone ([Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/), [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) and [Uncanny Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/)). There’s no shortage of ways to find out whether or not a student has completed a course. For lessons and topics, we offered a few ways to look up completions by user, but never for a *group* of users or all users. That’s what we’re adding in today’s Tin Canny 4.2 release. To use the reports, just drop \[uotc\_lesson\_report\] or \[uotc\_topic\_report\] shortcodes onto a new page. Once that’s done, you’ll see something like this: [](https://www.uncannyowl.com/wp-content/uploads/2023/04/LearnDash-Lesson-Completion-Report.png) It’s as easy to use as it seems. Administrators or Group Leaders can just select a group, course and lesson (or topic) to see a list of everyone that has access to that lesson or topic and their completion status. Need to know which users in your group haven’t completed a specific lesson yet? Now it’s easy. The new shortcodes even support choosing which columns to display–including time data, if the [Simple Course Timer](https://www.uncannyowl.com/knowledge-base/simple-course-timer/) module from Toolkit Pro is active. ### New Completion Condition options One issue we sometimes see on Tin Canny sites that use SCORM or xAPI assets is the uploaded modules not sending the verbs they expect, or no unique verb is sent at the end of a module. Maybe you’re one of those users and you have a module that just sends an “Experienced” verb for every slide, and what you really need is to tell Tin Canny, “Okay, I know every slide returns an Experience verb, but I need to unlock the Mark Complete button when there’s an Experienced verb for a specific slide.” To use this new combined verb/target condition, just enter the name of the slide and the verb you want to target in the [Completion Condition](https://www.uncannyowl.com/knowledge-base/tin-canny-learndash-mark-complete/#completion-condition) field of a lesson or topic page in this format: uotarget **`TARGET_NAME`**::**`VERB`** So if the slide name is “Slide 2” (make sure it matches what you see in the Tin Can report in the Target column) and the target verb is “attempted”, this would be your completion condition: uotarget Slide 2::experienced This is definitely for advanced users only, but it will help a lot of sites. ### What else is new? The [Tin Canny Course reports](https://www.uncannyowl.com/knowledge-base/course-report/) had some big updates that change how we retrieve and populate data. With the availability of new LearnDash functions in (somewhat) recent versions, we changed some old queries to take advantage of improvements on the LearnDash side. If you have a huge number of users and saw performance issues or memory errors in the past, we hope you’ll try again. Flywheel users will benefit from switching to a wp-load.php dependency to Ajax only for some xAPI and H5P behaviours, and there are several additional code improvements that will help all users. **Categories:** News, Tin Can --- ### [Uncanny Owl Turns 10](https://www.uncannyowl.com/uncanny-owl-turns-10/) **Published:** May 22, 2023 **Author:** Ryan Moore **Content:** Ten long years ago, on May 29, 2013, Ken and I (Ryan) cofounded Uncanny Owl. With absolutely no experience starting or managing a business, no clear direction, and 4 children under the age of 3 between us, walking away from our stable, mid-level jobs at great companies somehow seemed like a good idea. Here we are in our Toronto office in June 2013 (we ended up abandoning a physical office in 2018): [](https://www.uncannyowl.com/wp-content/uploads/2023/05/DSC00209-2013-06-10-scaled.jpg) The first 3 years of the company largely consisted of experimenting with a lot of elearning ideas and taking on any consulting projects we could find. We had grand visions and aspirations, and we worked hard trying to build Uncanny Owl’s reputation in the elearning space. It wasn’t until almost a year after we started the company that we began focusing on WordPress and [LearnDash](https://www.uncannyowl.com/share/learndash/). That journey started when we built a website to showcase our *course* development expertise, but instead of asking us to build courses for them, visitors wanted us to build a copy of the website. We started showing a “Want us to build a site like this for you?” banner for visitors from LearnDash and our website, and the rest is history. ## Uncanny Owl Timeline So what happened over the first 10 years of Uncanny Owl? Here’s a timeline covering some of the highlights: - September 2013; We sent out our first invoice to a customer for a whopping **$67.80**. Work was slow and losses were high for the first 2 years. - March 2014: We took on our first LearnDash consulting project. [Justin Ferriman](https://justinferriman.com/) and his LearnDash team were a huge help with landing consulting projects for our first few years. - November 2014: We hired our first contractor so we could start taking on more development-heavy projects. - March 2016: We hired our first 2 employees **and** released [Uncanny Toolkit for LearnDash](https://wordpress.org/plugins/uncanny-learndash-toolkit/), our first (and still most popular) plugin. - July 2016: We released our first **premium** plugin: [Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/). It remains our most popular paid plugin and is the #1 premium add-on for LearnDash. From July 2016 through September 2017, we released 4 more LearnDash plugins: [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/), then [Uncanny Codes](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/), [Uncanny Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), and finally [Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/). - September 2018: We released [Uncanny Automator](https://automatorplugin.com/), our first non-LearnDash plugin and our fastest-growing product. Automator was originally intended as another add-on for LearnDash that could be used to personalize learning journeys. - November 2020: We joined the [WPBeginner Growth Fund](https://www.wpbeginner.com/news/welcome-uncanny-owl-and-automator-plugin-to-the-wpbeginner-growth-fund/) and expanded our network of partners. - Summer 2021: We finally exited LearnDash consulting to focus exclusively on plugin development and support. ## Uncanny Owl Today Uncanny Owl in 2023 looks nothing like in did in 2013, and that’s a good thing. It’s no longer just the 2 of us; we’re now up to 16 people—Ryan, Ken, Kimberly, David, Ajay, Saad, Curt, Dani, Agus, Manal, Joseph, Huma, Brendan, Nastia, Parthavi and Muneeb. Most of the team is in Canada (many of whom are pictured below at a recent lunch), but we also have staff in the Philippines, Greece, Pakistan and India. [](https://www.uncannyowl.com/wp-content/uploads/2023/05/IMG_8909.jpg) Ken and I are extraordinarily grateful to our team for making Uncanny Owl what it is today. We recognize how fortunate we are to have a great team and we treasure the capabilities, camaraderie and talent that everyone brings to the table every day. Here are some cool accomplishments that were made possible thanks to our team: - Getting over 1 million downloads of our free plugins - Helping Automator users run over 40 million recipes - Maintaining a 4.9/5.0 average rating of our plugins on WordPress.org - Having over 60,000 websites trust us to help run their businesses We appreciate the support of all of our users over the past 10 years and we hope the work we do has helped your company in some way. If you have your own Uncanny Owl experiences to share, we encourage you to post in the comments below! **Categories:** News --- ### [Toolkit Pro 4.1: Drip topics & Autocomplete with Formidable Forms](https://www.uncannyowl.com/drip-learndash-topics-autocomplete-formidable-forms/) **Published:** June 1, 2023 **Author:** Ryan Moore **Content:** We’re excited to announce another *big* release of our most popular premium plugin, [Uncanny Toolkit Pro for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/). The 4.1 update adds 3 completely new modules for LearnDash users: Drip Topics by LearnDash Group, Autocomplete Lessons & Topics on [Fluent Forms](/share/fluent-forms/) Submission and Autocomplete Lessons & Topics on [Formidable Forms](/share/formidable-forms/) Submission. There are also a few enhancements for existing modules that we’re excited to share. ### Drip Topics by LearnDash Group Current Toolkit Pro users will already be familiar with our popular drip module for lessons, “[Drip Lessons by LearnDash Group](https://www.uncannyowl.com/knowledge-base/drip-lessons-by-ldgroup/)“. As you might expect, this new module is effectively the same thing as what we offer for lessons–except for topics. The settings will all be familiar, and there’s even support for the [LearnDash Notifications plugin](https://www.learndash.com/support/docs/add-ons/notifications/). [](https://www.uncannyowl.com/wp-content/uploads/2016/07/LearnDash-drip-topic-by-group.png) ### Autocomplete Lessons & Topics on Form Submission The 2 new modules for [Formidable Forms](/share/formidable-forms/) and Fluent Forms mirror what we have for Gravity Forms and WPForms. With the new tools, we can detect when a Formidable Form or Fluent Form appears on a lesson or topic page, hide the Mark Complete button, and require the users to submit a form entry. In Formidable Forms (and other other form integrations), the user will be advanced to the next step in the course. Unfortunately, Fluent Forms *cannot* support automatic advancement, only completion of the lesson or topic, so users must manually advance if they are using this module with Fluent Forms (this is a Fluent Forms limitation). Settings are available for the new modules to control how to handle previous form entries and availability of the module (Formidable at the form level, Fluent at the global level, as Fluent can’t support custom form-level settings): [](https://www.uncannyowl.com/wp-content/uploads/2023/06/fluent-forms-autocomplete-learndash-lessons-topics.png) The modules are particularly useful for things like course feedback forms, and if added to the last lesson or topic of a course, they can be used as a final step to trigger course completion. ### Restrict Page Access based on course completion Our popular [Restrict Page Access](https://www.uncannyowl.com/knowledge-base/restrict-page-access/) tool gains a new option for page permissions: Course Completion. Here’s what the updated metabox looks like in Gutenberg: [](https://www.uncannyowl.com/wp-content/uploads/2023/06/Restrict-page-access-based-on-LearnDash-course-completion.png)This allows you to control any page or post type and base it on the user having a particular role, enrollment in a course, completion of a course, or enrollment in a group. You can also redirect users to a page explaining the restriction or just show a message to users that don’t have access. ### Enhanced CSV Reports: Start date Our Enhanced LearnDash CSV Reports module adds support for 1 new column type: Start date. Now it’s easy to see at a glance when users started a course (or gained access via a group). Those are the highlights of the new [Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) release. We hope you find them useful! **Categories:** LearnDash, News --- ### [How to Create & Sell LearnDash & WooCommerce Promo Codes](https://www.uncannyowl.com/how-to-create-sell-learndash-woocommerce-promo-codes/) **Published:** December 23, 2022 **Author:** Brendan Da Costa **Content:** *In this step-by-step guide, we’ll show you how to create and sell LearnDash and WooCommerce promo codes. Use them for course registrations, to sell event tickets or to unlock special features on your website.* So you want to be a master codebreaker, do you? Well, you’ve come to the right place. With Uncanny Codes, you can create and customize unique codes to sell, unlock or promote just about anything on your website. Whether you want to use codes for event registration, product tie-ins, or to run limited promotions, Uncanny Codes has you covered. In this quick guide, we’ll show you how to create and sell promo codes and feature some of the best ways to use them. Don’t worry, you won’t actually need to know anything about cryptanalysis in order to follow along. ## **What You’ll Need** If you want to “crack the code”, you’re going to need a supercomputer— or a cipher machine and a lot of time. But if you’re trying to make some unbreakable codes of your own, all you’ll need are these awesome WordPress plugins. ### **Uncanny Codes** Uncanny Codes is the best code management plugin for WordPress. Auto-generate dozens (or thousands) of codes with your own prefix, suffix, expiration date and usage rules. Native form-building integrations with Gravity Forms, WPForms and others makes Uncanny Codes easy-to-use on the front and end back end.  [Click here](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/) to download the Uncanny Codes plugin. ### **Uncanny Automator** Uncanny Automator is the #1 WordPress automation plugin. Create combinations of triggers and actions across 100+ integrations to automate repetitive tasks, improve your workflows, and save time and money.  Ironically, Automator has a no-code promise (the computer programming kind) that will make creating your own codes (the promotional kind) easier and a lot more fun than trying to crack the Caesar shift. And, not to mention, a lot cheaper than hiring a developer. [Click here](https://wordpress.org/plugins/uncanny-automator/) to download the Uncanny Automator plugin. ### **WooCommerce** As the most popular ecommerce plugin for WordPress, WooCommerce needs no introduction—but it’s a key tool in our codebreaking algorithm so we’ll introduce it anyway. In addition to stocking your digital shelves, WooCommerce can handle payment processing, shipping and tracking, marketing, memberships and more.  With countless extensions and tons of powerful themes, you can build and customize your ecommerce store anyway you’d like. It’s not an enigma why [more than 6.3 million websites](https://barn2.com/woocommerce-stats/) power their online shopping experience with WooCommerce. [Click here](https://wordpress.org/plugins/woocommerce/) to download the WooCommerce plugin. Now that you have Uncanny Codes, Automator, and WooCommerce, there isn’t a spy on earth who can make codes faster than you. In the next section, we’ll show you how to generate codes, create WooCommerce products to sell them and how to configure automations that fit into your workflows. ## **How to Sell Anything with Codes** In this example, we’ll show you how to generate batches of codes that future students can redeem to gain access to online courses—almost like a cryptographic key! Leverage partnerships with academic institutions, publishers and marketers and include these codes in printed textbooks and other hard copy content. Then, students and customers can register on your website to redeem the codes and gain access to supplementary material or special promotions. Alternatively, with just a few tweaks to this example, you can sell codes for event registration or as event tickets, to run limited promotions, or to unlock restricted (read: top secret) content. Here’s how it’s done. ### **Step 1: Generate Your Codes** From your WordPress Admin Sidebar, navigate to *Uncanny Codes* > *Generate codes*. You’ll be prompted to name the batch of codes that you want to create. We’ve named this batch of codes *Introduction to Cryptanalysis*.  Next, you’ll have to select a method for how you intend to use the codes. We want these codes to enroll users into LearnDash courses/groups when they are redeemed. However, we’ll be selling the codes to academic institutions, corporate entities and/or publishers to distribute to end-users on their own. In order to be able to sell the codes, we’ll have to select the *Uncanny Automator* option.  Under *Code settings*, in the field labeled *Number of uses per code*, set the value to “1”. Setting the number of uses, or redemptions, per code to anything other than “1” will prevent you from being able to sell them. Set an expiration date and time. If you’re selling these codes to an academic institution or textbook publisher, you can set the expiration date and time to coincide with the academic year and/or the publication date of new textbook editions. Next, select *Auto-generate codes*.  No two codes are alike—that’s what makes them so tough to crack. To auto-generate your codes, fill in the remaining fields as desired. For example, we’re creating 1,000 unique codes with the suffix “01” for our own internal record keeping purposes. Alternatively, someone selling event tickets in the form of codes might choose location prefixes or suffixes to denote cities, states, and/or countries. In later steps, you’ll see how you can use filters to sort users into different workflows based on data such as code prefixes and suffixes.  After you’ve configured your code settings, click **Generate codes and create a recipe**. ### **Step 2: Create a New Recipe** Once your codes have been created, Uncanny Codes will take you to an Uncanny Automator recipe editor screen that will look something like this:  Much like with your batch of codes, the first thing you’ll want to do is give your recipe a name that makes it easy to recognize at a glance. For example, we’ve named this recipe *Uncanny Codes—LearnDash: Introduction to Cryptanalysis*. Next, in the *Actions* panel, click **Add action**. From the menu of available integrations, click **LearnDash**. From the drop-down list that appears, select *Enroll the user in a course* and select the course that you want to associate with your new batch of codes. When you’re finished, click **Save**.  In the *Recipe* box in the upper right-hand corner, toggle the recipe from *Draft* to *Live*.  This automation will ensure that end-users crack the code (i.e., get enrolled in your supplementary course when they enter a code). ### **Step 3: Create a New Product** In the Automator recipe editor screen, you would have seen a friendly reminder to create a product associated with your new batch of codes so that you can sell them in your WooCommerce store.  After you’ve created your recipe, from your WordPress Admin Sidebar, navigate to *Products* > *Add new*. In the *Product data* panel, set the product type to *Codes for Uncanny Automator*.  Once you’ve set the product type to *Codes for Uncanny Automator*, the product will automatically be set to *Virtual*. Each unique code that is part of a batch is sold individually. As such, the *Regular price* reflects the price per code. We’ve selected our code batch, *Course Access*, and set the price per code at $5.00.  Finish configuring your product as desired, including setting the title, product description, low stock threshold, etc. When you’re finished, click **Publish**. Congratulations! You’re now ready to sell codes—just don’t get caught. ### **Step 4: Start Selling Codes** The next step in selling your codes is setting up a smooth workflow that minimizes friction for your customers and end-users and maximizes your sales. Based on our product configurations, this is how our customers (academic administrators, publishers, etc.) will view the product page for our access codes:  Once this customer completes their shopping experience, they will pay $5.00 each for five (5) unique codes.  After their order has been completed, the customer will land on a confirmation page with their purchased codes and a clickable **Download CSV** button. They’ll also receive an email with their codes along with a .csv file with the same information.  If we return to the product editor screen after the customer’s purchase as a site administrator, we can see that our inventory of codes has been reduced by five (5) with 995 still available for sale.  ### **Step 5: Create a Code Redemption Workflow** Once your customers have purchased their codes, they can decide their own method of distribution to the end-user. For example, textbook publishers can print one code in each textbook with instructions for code redemption. Marketers can do the same with their hard copy content or with user-restricted content on their own digital platforms. Academic institutions and office administrators can send the codes via email within their organizations. To finally crack the code, however, the end-users will need some help from you. If you are using the Gutenberg block editor, you can simply drag and drop the *User Redeem Code* block into the page you are editing. Alternatively, you can copy and paste the shortcode \[uo\_user\_redeem\_code\] into a shortcode block.  More advanced WordPress users can find alternate ways to incorporate code redemption into their workflows. For example, you can combine Uncanny Codes’ native WPForms integration along with Elementor Pro to create a sleek popup like the one below for users to redeem their codes.  Next, create an Uncanny Automator recipe that displays the Elementor popup after a user logs in to your website for the first time.  Users might accidentally click out of your popup without having redeemed their code. Give users the option to recall the popup with an Automator magic button. In a new recipe editor, in the *Triggers* panel, select **Automator** from the menu of available integrations.  From the drop-down list that appears, select *A user clicks a magic button*.  The trigger contains a shortcode that you can copy and paste to embed the magic button anywhere on your website—for example, a user account page.  Recreate the Elementor Pro popup action from the previous recipe in the *Actions* panel and toggle your recipe from *Draft* to *Live*.  Your new users will be cracking codes like chestnuts! ### **Bonus: Create a Code Tracking Network** Every master codebreaker knows; you’re only as good as your spy network. If you or your customers need to keep track of code usage—for example, a compliance officer tracking employee enrollment in your course(s)—you can set up this recipe or one similar to it. (Note: if you set up this recipe to track code usage, you can delete the recipe we made in “Step 2” once this one is *Live* as adding a user to a LearnDash group also gives them access to the courses associated with that group.) We’ll start by setting up a trigger and action that creates a LearnDash group when a user purchases codes. From your WordPress Admin Sidebar, navigate to *Automator* > *Add New*. In the pop-up window that appears, select *Logged-in users* and click **Confirm**.  Name your recipe. We’ve named this recipe *WooCommerce-LearnDash: Introduction to Cryptanalysis*. In the *Triggers* panel, from the menu of available integrations, click **WooCommerce**. From the drop-down list that appears, select *A user pays for, lands on a thank you page for an order with a product*.  Next, in the *Actions* panel, click **Add action**. From the menu of available integrations, click **LearnDash**.  From the drop-down list that appears, select *Create a group*.  Automator will present you with an editor where you can configure the group settings. We’ve used a *token* (a dynamic piece of data pulled from our website) to complete the *Group name*.  When you’re finished with your configurations, click **Save**. Your action should look like this:  Now, to complete our “spy network” we’re going to add a second trigger and a second action along with a filter. In the *Triggers* panel, click **Add trigger** then click **WPForms** or whichever form-building plugin you used for your code redemption form. From the drop-down list that appears, select *A user submits a form* and select the form that contains the code redemption field. Click **Save**. At the top of the *Triggers* panel, ensure that the *Run recipe when* setting is set to *Any*.  In the *Actions* panel, click **Add action** then click **LearnDash**. From the drop-down list that appears, select *Add the user to a group*.  Automator will prompt you to select a group. Because the group to which we will be adding these users has not yet been created (i.e., another user has not yet purchased the codes) we’re going to use a powerful feature called *action tokens* (dynamic pieces of data pulled from within the same recipe). In the *Group* field, select *Use a token/custom value*.  In the empty field that appears, click the **Asterisk**, the token symbol. Under *Actions*, select *Create a group* > *Group ID*. When you’re finished, click **Save**.  With both actions, your *Actions* panel should look like this:  In our example, the user who purchases our codes (administrators, publishers, etc.) is not the same user who will be enrolling in our course (students, employees, etc.). As such, we need a way to “filter” users into the correct set of actions. In the *Actions* panel, hover over the *Create a group* action and click **Filter**.  In the *Conditions* window that appears, select *WooCommerce* > *The user has purchased a specific product*.  In the window labeled *Configure the rule*, select the product associated with your codes. In our example, that’s *Introduction to Cryptanalysis*.  After you’ve selected your product, click **Save filter**. The action should now look like this:  To ensure that group leaders are not included as group members, you can add another filter to the *Add the user to a group* action as follows:  With these filters in place, Automator will sort users into groups to suit our workflow. To complete our “network” and notify the group leader whenever a code is redeemed, we can add another action. In the *Actions* panel, click **Add action** then click **LearnDash**. From the drop-down list that appears, select *Send an email to Group Leaders of a group*.  Automator will present you with an editor where you can configure the email message to send to group leaders whenever a user fills out the redemption form. Use tokens to include the user’s name and the code they redeemed.  When you’re finished, click **Save**. Your *Actions* panel should look like this:  Finally, in the *Recipe* box, click **Edit** next to *Times per user* and set the value to “1”. This will ensure that, if a user goes on to purchase more codes from this batch in a separate transaction, they won’t create duplicate groups. Toggle the recipe from *Draft* to *Live*.  ## **Keep Cool, Keep Coding** Now that you’re a master codebreaker, we bet there isn’t anything you can’t sell on your website with the right code, product and recipe settings. What are some of the codes that you need us to crack? Let us know in the comment section below. Until then, keep cool and keep coding! **Categories:** Best Practices, LearnDash, Uncanny Automator --- ### [Uncanny CEUs: Archive quiz results](https://www.uncannyowl.com/uncanny-ceus-archive-quiz-results/) **Published:** November 17, 2022 **Author:** Ryan Moore **Content:** The [Uncanny Continuing Education Credits plugin for LearnDash](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) is perhaps the #1 tool for archiving LearnDash course records. Out of the box, LearnDash on its own can only track the current attempt for a course. If users retake a course after a progress reset, all records of earlier course activity, including certificates, is wiped out. Uncanny Continuing Education Credits (a.k.a. Uncanny CEUs) was born out of a need to keep a record of all course activity. ### Introducing quiz record archives We have archived LearnDash course records for years. The completion records could be included in transcripts to give a complete record of a user’s learning activity as well as in admin and front end reports. For compliance and other periodic training, these permanent course records were invaluable, but they were just that–course records. With the release of Uncanny Continuing Education Credits 4.0, we’re adding support for *quiz* record archiving to the mix. Need to know how some students performed in final course quizzes 3 years ago? No problem. Concerned that our [Quiz Question Analysis Report](https://www.uncannyowl.com/knowledge-base/learndash-quiz-question-analysis-report/) in [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) has invalid results because it doesn’t captured archived quiz records? Not any more! ### Generate historical records Now that Uncanny CEUs can archive more than just quiz data, we had to rebuild some of the Settings page to support different data types. Here’s how things look now if you want to generated credit records, course records and quiz records: [](https://www.uncannyowl.com/wp-content/uploads/2022/11/Achive-LearnDash-course-and-quiz-results.png) Generating results really is as easy as clicking a button. It can take a few minutes with lots of results, but in the end you will have a complete set of data that will survive course and quiz progress resets. Of course, these steps are generally only needed when you first install the plugin. Once activated, Uncanny CEUs will automatically add all new course and quiz records to our special archive tables. When historical results are stored, our plugin is recording a permanent record of quiz dates, scores, and answers to multiple choice questions. ### Using historical records Tracking the data is one thing, but how do you go about using it? Archived quiz results are primarily for admin use, so once archived records have been stored, we add a new section to edit user pages in /wp-admin/ that shows these records. It shows up immediately beneath active quiz results in the Course Info section and looks like this: [](https://www.uncannyowl.com/wp-content/uploads/2022/11/Archived-quiz-results.png) We also include quiz archive data in the Quiz Question Analysis Report. There are a few important things to keep in mind: - While quiz records are stored in the archive as they’re recorded, each quiz attempt will only show up ONCE on the edit user page and reports. In other words, after completion, the attempt would show up with regular quiz results only. It is only *after* a course progress reset wiped out quiz records that the attempt would be moved and show up in the “Archived quiz results” section instead. - It is not possible to delete archived quiz results. - Quiz certificates are not retained, only quiz scores, dates, and multiple choice answers. ### Other CEU additions Don’t worry, there are other new features in the 4.0 release as well! For anyone that works with [multi-course certificates](https://www.uncannyowl.com/knowledge-base/continuing-education-certificates/), access was always limited to email delivery and retrieving files from the web server. Now, for developers that need more flexibility and want to retrieve this certificate type with something user-facing, links to certificates are stored in user meta. Here’s how you can use them: - ceu\_multicert\_$certificate\_id\_course\_$course\_id = certificate path (certificate id and course id are actual certificate and course ids) - ceu\_multicert\_$certificate\_id\_course\_$course\_id\_earned = current timestamp (certificate id and course id are actual certificate and course ids) - ceu\_multicert\_$certificate\_id\_earned = current timestamp (certificate id is actual certificate id) - uo-ceu-multicert-$current\_time = possible array of all certificates generated - uo-ceu-multicert-linked-courses-$current\_time = all courses linked to certificate - uo-ceu-multicert-certificates-$current\_time = all certificates matching courses $current\_time and timestamps will be the same for all keys added above. If you’ve ever wanted to show credit values associated in a course on non-course post types, you could pass in a course ID, but that made it very difficult to use in sitewide elements like a sidebar. In the 4.0 release we have added detection to the [\[uo\_ceu\_available\] shortcode](https://www.uncannyowl.com/knowledge-base/continuing-education-shortcodes/#available-course-credits), so now if it’s used in a lesson or topic post type, it can look up the parent course and show the credit value for that course. That covers the highlights of the [Uncanny Continuing Education Credits 4.0](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) release. Make sure to check the [changelog](https://www.uncannyowl.com/knowledge-base/continuing-education-credits-changelog/) for a complete set of updates. **Categories:** Continuing Education, LearnDash --- ### [How We Made LearnDash 75 Times Faster](https://www.uncannyowl.com/how-we-made-learndash-75-times-faster/) **Published:** October 31, 2017 **Author:** Ryan Moore **Content:** ***Important****: This article examines how we modified certain parts of LearnDash to improve performance on high volume/enterprise sites. LearnDash itself is not slow, but some parts of it are designed for convenience rather than performance. For the vast majority of LearnDash sites, the optimizations discussed below are unnecessary and could be dangerous. This article is intended for very large sites where scalability and performance are critical.* [](https://www.uncannyowl.com/wp-content/uploads/2017/10/faster-learndash-performance.jpg)We see a lot of projects that really push [LearnDash](https://www.uncannyowl.com/share/learndash/) to its limits, and for a sub-$200 WordPress plugin, those limits are surprisingly high. LearnDash is generally an efficient plugin that serves the vast majority of its customers very well, but every so often, an organization wants to see how well it can really perform at scale. The typical LearnDash site we see might expect up to 15 simultaneous learners (even on sites with upwards of 1,000 users) and perhaps 200 LearnDash posts. We support several, however, that have *hundreds* of simultaneous learners and thousands of LearnDash posts (courses, lessons, topics and quizzes). At that level, everything gets harder and keeping everything running smoothly requires tuning performance wherever we can. What we observed on extremely large sites, especially after total courses crossed the 100 level, total quizzes exceeded 1,000 and we started going over the 100 simultaneous user mark, was that performance significantly deteriorated in 3 main areas: user profile pages in /wp-admin/, quiz listing pages, and quiz submissions. In some cases users and admins were even seeing 503 errors, which is catastrophic for any live LearnDash site, but especially ones with hundreds of people online at the same time. In user profiles we found that database operations could often exceed 150 seconds of processing times and require 10s of thousands of SQL queries to render (perhaps 200 queries is typical on most pages). What we found was that the “Course Progress Details” section of the profile page was looping through *all* courses to retrieve records for the user and the courses for every course the user was enrolled in. It was pulling everything down on page load too, so even if an admin were just going in to change a password or something else unrelated to LearnDash, the site would be affected by severe load. Loading all of this data does make things a lot more convenient for admins, and in most cases this section wouldn’t be an issue. But when loading tens of thousands of records on a site with lots of courses, it’s a problem. Fortunately, our developers were able to override this section completely with an alternative solution that combines queries and reduces loops when the admin drills down into that specific course. The approach means we only load data when it’s needed and only as much as is needed. We also removed the edit links to LearnDash posts from the profile page, which are generally rarely used, and we added some transients to speed things up further. The net effect of these changes? **We took profile page load time for admins from 150 seconds to 2 seconds.** The difference was night and day. It made profile pages usable again. The list of quizzes inside LearnDash was another interesting performance challenge. With well over 1,000 quizzes (and thousands of lessons and topics) on a site, just listing the quizzes was a 120 second exercise that adversely affected learners on the site at the same time. Why so slow? Well, LearnDash adds filters to quizzes to make it easy to choose a course (or something else) and only see quizzes under it. But to populate that list of filters, it needs to look up all the associations between quizzes, courses, lessons and topics—which takes a long time on a big site. This was a case where we really gave up convenience for performance. We didn’t care about only showing objects with quizzes in the filters. So instead we just loaded all courses, then on course selection in a filter we showed all lessons and topics. If the administrator filtered and there were quizzes, great. And if not, we just showed a message that there were no quizzes. **That change took loading the quiz listing from 120 seconds to 2 seconds.** It was well worth the slight inconvenience. [](https://www.uncannyowl.com/wp-content/uploads/2017/10/learndash-quiz-performance.png) Next we looked at quiz submission performance. On sites with a lot of content, saving quiz answers that include essay questions can be extremely slow—in the case of a site with 120,000 rows in the wp\_posts table, it was taking 35 seconds to save quizzes with essay questions. Obviously that was trying learner patience and slowing down the site. To address this one we took a shortcut, and instead of looking for a matching post title or name to avoid duplicates when saving an essay answer, we skipped the check and just forced a unique post name. **That new approach took quiz saving time from 35 seconds to 3 seconds**. As you can see from our results, it is possible to significantly increase LearnDash performance on big sites. What’s especially nice is that LearnDash allows us to make 2 out of the 3 overrides above without changes to LearnDash code (and we’re hoping the third can be handled outside of LearnDash in a future LearnDash release if additional filters are added). This means it’s easy to bundle our performance improvements into a portable plugin and the optimizations will survive updates. Another factor that did help us really push LearnDash performance on these sites was assistance from [Pressidium](https://www.uncannyowl.com/share/pressidium), who are hosting the sites. They went out of their way to help us look at opportunities for performance enhancements and they applied some database changes to their environment to improve performance further. **Categories:** Best Practices, LearnDash --- ### [7 Cool Ways to Award LearnDash Certificates](https://www.uncannyowl.com/7-cool-ways-to-award-learndash-certificates/) **Published:** October 25, 2022 **Author:** Brendan Da Costa **Content:** Gold stars and extra credit are fun ways to motivate students and reward them for their hard work—but they don’t exactly speak to credentials. Certificates, however, give students something to work towards and serve as a tangible testament to their academic achievements. They also just look great hanging on the wall. In this step-by-step guide, we’ll show you how to improve student engagement using LearnDash certificates. Keep that certificate seal handy—with these eight cool ways to use LearnDash certificates, you’re going to need it! ## **What You’ll Need** Just like your students need tools for learning, you’re going to need some tools for awarding certificates and improving student engagement. Sadly, a laser pointer won’t do but we think you’ll find these plugins and add-ons much more helpful—and far less hazardous to your eyesight. They’re both easy to use and have a free version you can demo before making an investment. ### **Uncanny Toolkit Pro** [Uncanny Toolkit Pro](https://wordpress.org/plugins/uncanny-learndash-toolkit/) is the #1 must-have add-on for [LearnDash](https://automatorplugin.com/integration/learndash/) websites—probably because it’s a masterclass in “Saving Time for Your LMS”. In addition to features such as course dashboards and personalized logins, Toolkit improves the functionality of LearnDash certificates to make administration easy and improve the student experience. Enhance your certification process with modules to preview certificates, automatically email them to students and staff or let your students show off their credentials with a certificates widget.  Feel free to check out the full list of features and the Pro pricing schedule by [clicking here](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/). We’ll be using Toolkit Pro features in our examples but that doesn’t mean you can’t [download the free plugin](https://wordpress.org/plugins/uncanny-learndash-toolkit/) and try out core modules. ### **Uncanny Automator Pro** If you’re running an LMS WordPress website, then [Uncanny Automator](https://wordpress.org/plugins/uncanny-automator/) is the best way to save yourself time and money. Connect your various apps and plugins for enhanced functionality, automate repetitive tasks and workflows and eliminate bloat from your website. Specifically, Automator packs so many [LearnDash](https://automatorplugin.com/integration/learndash/) triggers and actions into even the free version of the plugin that you’ll feel like you’re cheating on an exam.  With Automator’s no-code, click-and-configure interface, you’ll be able to email LearnDash certificates to anyone on your contact list for just about any interaction that occurs on your website. In case that wasn’t enough, you can connect your LearnDash certification process to databases like [Airtable](https://automatorplugin.com/integration/airtable/), CRM tools like [ActiveCampaign](https://automatorplugin.com/integration/activecampaign/), ecommerce plugins like [WooCommerce](https://automatorplugin.com/integration/woocommerce/) or even membership plugins like [Restrict Content Pro](https://automatorplugin.com/integration/restrict-content/). Definitely try out the [free Automator plugin](https://wordpress.org/plugins/uncanny-automator/) and its dozens of LearnDash actions and triggers. Then, when you’ve gotten the hang of it, [upgrade to Automator Pro](https://automatorplugin.com/pricing/) to make the most of your LMS. In addition to Toolkit Pro and Automator Pro, we’ll feature other commonly-used plugins and apps such as [WooCommerce](https://automatorplugin.com/integration/woocommerce/) and [The Events Calendar](https://automatorplugin.com/integration/the-events-calendar/) but these are only optional. ## **7 Cool Ways to Award LearnDash Certificates** Now that you’re all set up with the right tools, let’s look at these seven cool ways to award LearnDash certificates so that your students can start decorating their walls with their credentials. ### **1. Email LearnDash Certificates with Toolkit Pro** Uncanny Toolkit Pro allows you to email PDF copies of certificates to students and administrators with just a click. Here’s how it’s done: **Step 1:** From your WordPress Admin Sidebar, navigate to *Uncanny Toolkit* > *Modules*. **Step 2:** Scroll down to the modules titled *Send Course Certificates by Email* and *Send Quiz Certificates by Email* or type “certificates” into the search bar.  **Step 3:** Toggle the button in the upper right-hand corner to the “On” position. **Step 4:** Click **Settings** to configure the module and draft the email. You can then decide who will receive the email and draft the title and content using dynamic data to personalize the message.  **Step 5:** Once you’ve configured the settings and drafted your email message, click **Save module**. Your students will now receive automated emails with a PDF copy of their certificate, ready for printing and framing! ### **2. Email LearnDash Certificates with Shortcode and Magic** Using some “copy-and-paste” shortcode and a little magic, you can put the power of printing certificates in your students’ hands—or, more accurately, at their fingertips. Upon completion of a course, present your students with a button to click if they would like to receive an emailed copy of their certificate. Here’s how to cast the spell: **Step1:** From your WordPress Admin Sidebar, navigate to *Automator* > *Add New*. In the pop-up window that appears, select *Logged-in users*.  **Step 2:** Name your recipe something that makes it easy to remember, like… *Certified Magician*.  **Step 3:** From the menu of available integrations, click **Automator**.  **Step 4:** From the drop-down list that appears, select *A user clicks a magic button*.  **Step 5:** Your trigger should now look like this:  Copy the bracketed text *\[acutomator\_button id=” xxxxx “ “ label=”Click here”\]* and save it to your clipboard. We’re going to embed this shortcode in the *Classic Editor* of the desired course. **Step 6:** From your WordPress Admin Sidebar, navigate to *LearnDash* > *Courses* and click **Edit** beneath the course for which you would like to offer certificates to students for course completion.  **Step 7:** In the *Classic Editor* screen, click the **Add button** icon then click **Shortcode** and paste the magic button shortcode (the bracketed text we copied from Step 5) into the box.  **Step 8:** Next, we’ll need some additional shortcode so that the Automator magic button only appears for students who have completed the course. Thankfully, LearnDash has a library of preset shortcodes for us to use. [Click here](https://www.learndash.com/support/docs/core/shortcodes-blocks/#learndash-course-complete-course_complete) for the *LearnDash Course Complete* shortcode or copy the bracketed text: \[course\_complete course\_id=”12″\]. Paste that shortcode above the Automator magic button shortcode. It should look like this:  Note that we’ve changed the Course ID. The simplest way to find your Course ID, if you don’t know it, is to return to the Course page and hover over the course with your mouse. A box should appear on the bottom left-hand corner of your browser window. In that line of text, the number following *post=* is the Course ID.  **Step 9:** Below the Automator magic button shortcode, paste \[/course\_complete\] so that the finished block should now look like this:  The Automator magic button will now only appear to students who have completed the course. You can add a new block above this one, describing the purpose and function of the Automator magic button or you change the label itself to something more descriptive by simply replacing “Click here”. **Step 10:** Return to your Automator recipe by navigating to *Automator* > *All recipes* and clicking **Edit** beneath *Certified Magician*. **Step 11:** In the *Actions* panel, click **Add action** then click **LearnDash**.  From the drop-down list that appears, select *Send a certificate*.  Use tokens such as *User email*, *User first name*, etc. to send, draft and customize your email.  Note: When formatting the *Certificate body*, do not use shortcodes. As in the image above, only use *tokens* by clicking on the **asterisk symbol**. You can use these *tokens* to include information such as dates, user first and last names and courses. **Step 12:** In the upper right-hand corner, toggle the recipe from *Draft* to *Live*. It should look like this:  “Abracadabra!” Just like that, your students can receive their certificate upon course completion with just a click. ### **3. Sell LearnDash Certificates with Automator and WooCommerce** Learning should be—and often is—totally free. But credentials often come with costs. With [Automator](https://wordpress.org/plugins/uncanny-automator/) and [WooCommerce](https://automatorplugin.com/integration/woocommerce/), you can offer paid [LearnDash](https://automatorplugin.com/integration/learndash/) certificates for free courses. Here’s the best way to sell those certificates: **Step 1:** The first thing you’ll want to do is to create a WooCommerce product. You’ll then connect this product to a LearnDash certificate using Automator. From your WordPress Admin Sidebar, navigate to *Products* > *Add New*. In the *Product data* panel, set the product to *Virtual*.  Finish configuring your product as you’d like by setting the price, image(s), upsells, cross-sells, etc. Once the product is to your liking, click **Publish**. **Step 2:** In these next steps, we’ll create a recipe that connects your WooCommerce product to a LearnDash certificate. We’ll add an additional trigger so that only the students who have earned the certificate will receive it. From your WordPress Admin Sidebar, navigate to *Automator* > *Add New* and select *Logged-in users*. **Step 3:** Name your recipe. We’ve named this recipe *WooCommerce-LearnDash: Certificate Order*. **Step 4:** In the *Triggers* panel, click **LearnDash**. From the drop-down list, select *A user completes a course*. Select the course associated with the certificate and click **Save**.  **Step 5:** Still in the *Triggers* panel, click **Add trigger** then **WooCommerce**. From the drop-down list, select *A user completes, pays for, lands on a thank you page for an order with a product*.  **Step 6:** Automator will prompt you to configure the rest of the trigger settings. We selected *completes* then chose our newly created product from the drop-down list. Your finished triggers should look something like this:  **Step 7:** In the *Actions* panel, click **Add action** then click **LearnDash**. From the drop-down list, select *Send a certificate* and configure the rest of the settings. When you’re finished, click **Save**. Your action should look like this:  **Step 8:** Toggle the recipe from *Draft* to *Live*. Here’s what the final recipe should look like:  **Step 9:** Students can sometimes be forgetful—because their heads are full of knowledge. If you wanted to ensure that your students get the recognition they deserve, you could create a second recipe to send an email upon course completion with a link for them to purchase their certificate. Grab the product url from the product page and paste it into the *Email body* field of your Automator action. That recipe might look something like this:  You could also use Automator’s tagging actions with CRMs like [Groundhogg](https://automatorplugin.com/integration/groundhogg/), [Mailchimp](https://automatorplugin.com/integration/mailchimp/) or [Mailpoet](https://automatorplugin.com/integration/mailpoet/) to send even more compelling emails and boost conversions. ### **4. Award LearnDash Certificates for Live Event Attendance** Who doesn’t love to have a perfect attendance record? You can use Automator to send certificates to attendees of live events as a way for your students to remember the occasion. Here’s how to send certificates as souvenirs of successful events: **Step 1:** From your WordPress Admin Sidebar, navigate to *Automator* > *Add New* and select *Logged-in users*. **Step 2:** Name your recipe. We’ve named this recipe *Special Event Attendance Certificate*. **Step 3:** In the *Actions* panel, click **The Event Calendar** and select *A user attends an event*. Automator will prompt you to select your event from a drop-down list. After you’ve selected your event, click **Save**.  **Step 4:** In the *Actions* panel, click **Add action** then click **LearnDash**. From the drop-down list, select *Send a certificate* and configure the rest of the settings. When you’re finished, click **Save**. **Step 5:** Toggle your recipe from *Draft* to *Live*. The finished recipe should look like this:  **Step 6:** Concerned about event certificates only being available by email and not from the website? One solution would be to [create a hidden course](https://www.learndash.com/creating-hidden-courses-in-learndash/) with an associated course certificate. Then, in our event attendance recipe, change the action so it completes the hidden course instead of sending the certificate via email. This way, the Toolkit Pro module to send a certificate can provide it by email, and the Show Certificates module in the free version of Uncanny Toolkit can show event certificates to students! ### **5. Credit & Course Group Based Certificates** Credit where credit is due—which, in this case, means awarding certificates. If you have purchased the [Uncanny Continuing Education Credits plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), you can award certificates for groups of courses as well as for credits earned. Here’s how to claim the credit: **Step 1:** After downloading the Uncanny Continuing Education Credit plugin, navigate *Uncanny CEU* > *Settings*. **Step 2:** Scroll down to the section labeled *Certificate Email Settings*. Check the boxes next to *Enable Multi Course certificate* and *Enable CEU Credits certificate*. You can also choose to send the certificate to Site Administrators and Group Leaders as a prudent recordkeeping practice.  **Step 3:** From your WordPress Admin Sidebar, navigate to *LearnDash* > *Certificates*. Select the certificate you would like to award based on credit or course groups or create a new one. On the right-hand side of the Classic Editor, you’ll see options to award the certificate based on CEU credits accumulated or courses completed.  Once you’ve finished configuring your certificate, click **Publish**. **Step 4:** Finally, navigate to *LearnDash* > *Courses*. From the Classic Editor within each course, you can set the CEU value. If you’re not certain how to do this—or would like to “continue” your Continuing Education Credits learning—[click here](https://www.uncannyowl.com/knowledge-base/continuing-education-certificates/). ### **6. Award LearnDash Certificates for Course Series with Automator** If you don’t have the [Uncanny Continuing Education Credits plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), you can still award certificates to students who complete a series of courses using Automator. It’s a lot easier than building a curriculum, we promise. This recipe won’t differ much from previous set-ups using Automator. The only difference is that you’ll add multiple triggers; one for each course. The finished recipe should look something like this:  ### **7. Award LearnDash Certificates for Offline Learning Activities** Why just keep the classroom online? You can leverage the power of [LearnDash](https://automatorplugin.com/integration/learndash/), [Automator](https://wordpress.org/plugins/uncanny-automator/) and [Uncanny CEUs](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) to make changes in the real world! Combine Automator with any form-building plugin or web application such as [WPForms](https://automatorplugin.com/integration/wp-forms/) or [Forminator](https://automatorplugin.com/integration/forminator/) to award credits and send certificates following offline learning events. **Step 1:** You’ll need some method of verifying attendance for your offline learning activities—this will serve as the trigger for our Automator recipe. If you already have a verification process, you can skip to the next step. For our verification process, we’ve created a form. This form can be a simple registration form or a more complex form with information only the attendees would know. It’s up to you to configure as you’d like. **Step 2:** Create a new recipe in Automator, select *Logged-in users* and choose an appropriate title. **Step 3:** In the *Triggers* panel, configure your trigger according to your verification process. In our example, we’ve selected our form-building integration and the form associated with our offline learning activity. Click **Save**. **Step 4:** In the *Actions* panel, click **Uncanny CEUs** then select *Award a number of custom CEUs to the user*. Automator will prompt you to fill out the date, description and number of CEUs to award. When you’re finished, click **Save**.  **Step 5:** Create a second recipe to send certificates or mark a hidden course complete (and send the certificate with Uncanny Toolkit) based on the total number of CEUs a student has earned. That recipe might look something like this:  ## **Keep Certifying** For students, certificates are as good as gold medals… if there was an Academic Olympics. And tools such as [Uncanny Automator](https://wordpress.org/plugins/uncanny-automator/) and [Uncanny Toolkit](https://wordpress.org/plugins/uncanny-learndash-toolkit/) help you leverage the certification process to improve your LMS and, ultimately, your students’ experience. Try out a few of the examples we provided in this post and we promise you’ll spend less time administrating and more time educating. Then, when you’re ready, upgrade to the [All Access Pass](https://www.uncannyowl.com/all-access-pass/) and get even more Uncanny plugins and add-ons, not to mention industry-leading support. Now that’s certifiably cool. **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [Uncanny Groups for LearnDash 5.0](https://www.uncannyowl.com/uncanny-groups-for-learndash-5-0/) **Published:** October 4, 2022 **Author:** Ryan Moore **Content:** Yes, the [Uncanny Groups release](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) is *that big*. It deserves the 5.0 label, because this is a giant release with dozens of changes and over 100 hours of development and testing time. A lot of what’s new probably won’t even be on the radar of most users, so we’re hoping this release brings a lot of happy surprises! Ready for the list of what’s new? It’s a big list, but if you’re on Uncanny Groups user, we definitely recommend reading through to the end. ## Pooled seats Ever wish you could set up some groups in a hierarchy, and instead of having seats managed for each individual groups, the *entire* set of groups could draw from a shared pool of seats? That’s what this is. When enabled, groups that are connected together share their seats. Suppose you sell course access to a school and grant that school 1,000 seats to use at their discretion. They’re going to want to divide students up into classes for reporting purposes as well as to manage course enrollment. Instead of having to figure out how to assign 20 seats to one group and 30 to another, now the entire set of classrooms shares from a total pool of 1,000 seats. If a Grade 9 math class uses up 20 seats, then a grade 10 music class uses 30, other groups now have a pool of 950 available seats. That’s the simple introduction. We tried to keep it as straightforward as possible, but there’s a lot to consider when implementing pooled seats. To get started, you’ll have to think about whether you want to enable pooled seats for specific groups only, and let Group Leaders control that setting, or whether you want all group hierarchies to have pooled seats enabled. Here’s what it looks like: [](https://www.uncannyowl.com/wp-content/uploads/2022/10/LearnDash-Pooled-Seats-Settings.png) Checkbox 1 allows Group Leaders to control whether or not to enable seat pooling at the individual hierarchy level by adding a checkbox to the Group Management page. This checkbox is only shown when a top-level group is selected in a hierarchy, and it looks like this: [](https://www.uncannyowl.com/wp-content/uploads/2022/10/Top-Level-LearnDash-Group-Hierarchy.png) If checkbox 2 is also selected on the settings page, this forces all groups in all hierarchies to use the pooling system. It means the setting for pooled seats is now longer managed at the hierarchy level and instead enables it globally. So how does it actually work, and what happens in various use cases? Let’s cover an example to make this more clear. Suppose you start with a parent group with 100 seats assigned, and that parent group has a child group that has 50 seats. If pooled seats are enabled for the hierarchy, both parent and child groups would immediately see that the *hierarchy* now has 150 seats. (And if you disabled the pool again, the seats would return to 100 and 50 respectively.) When viewing the parent or child groups in this situation, all would show the same number of total and available seats. In cases where enabling seat pooling results in no available seats, perhaps because of admin overrides, Uncanny Groups calculates the total pooled seats as the current number of users across all groups in the hierarchy and adds 10, but this default value can be overridden with a filter: ``` apply_filters( 'ulgm_pool_seats_add_extra_seats_in_parent', absint( 10 + $diff ), $diff, $group_id ) ``` Just a note too that for any of this to work, group hierarchies must first be enabled in LearnDash settings and relationships must be set up for groups by administrators. There is not yet any way to manage group relationships in the front end or by Group Leaders. ## New pricing options For a *very* long time now we’ve had requests to override pricing rules and quantities for seats. Typically requests would sound something like these: “I want to sell a group product for $999 that includes 100 seats, I don’t want users to have to choose a quantity of 100 and change my course prices to hit this pricing target.” “I only want to sell groups with a minimum of 5 seats, they shouldn’t be available when the quantity of seats is just 2.” We would always recommend WooCommerce pricing plugins that allowed easy overrides, but it wasn’t a great workaround. Today’s update adds native solutions to these problems to Uncanny Groups. Here’s what the pricing section now looks like when setting up a Group License product: [](https://www.uncannyowl.com/wp-content/uploads/2022/10/LearnDash-Group-pricing-rules.png) Normally, of course, the price is ignored for a Group License product, instead calculating the price based on the cost of each Group Course product and the number of seats purchased. But when “Fixed price” is checked, the “Regular price” field is used as the group cost *regardless of the number of seats purchased*. In the example above, we’re charging $100 for exactly 10 seats. Users cannot purchase another amount, they just buy a product here that includes 10 seats for that fixed cost. The “Minimum” and “Maximum” quantity fields can be used independently to set limits around seat purchases. These might even be used to set up more advanced pricing rules for different group types. ## New Gutenberg blocks One of our customers rightly pointed out that we had Gutenberg blocks in other plugins for redemption and registration shortcodes, but we didn’t for \[uo\_groups\_registration\_form\] and \[uo\_groups\_redemption\_form\]. Now we do! Look for the new blocks for “Enrollment Key Redemption” and “Enrollment Key Registration”. The new blocks add support for the normal shortcode attributes as well, so the registration block (for example) has settings for redirections, making the key optional, logging the user in automatically on submission and the default role. ## New report sort options We made it a lot easier to sort the various Uncanny Groups reports by different columns on load using shortcode attributes. There are a ton of new attributes here, so we’ll post the list with quick details: Group management `[uo_groups]` - Enrolled users - `enrolled_users_orderby_column` – The title of the column used to sort. Default: `First name` - `enrolled_users_order_column` – Designates the ascending or descending order of the `orderby` parameter (`asc`/`desc`). Default `asc`. - Group leaders - `group_leaders_orderby_column` Default: `First name` - `group_leaders_order_column` Default `asc` Course Report `[uo_groups_course_report]` - `orderby_column` Default: `Date Completed` - `order_column` Default: `desc` Quiz Report `[uo_groups_quiz_report]` - `orderby_column` Default: `Date` - `order_column` Default: `desc` Assignments Report `[uo_groups_assignments]` - `orderby_column` Default: `Date` - `order_column` Default: `desc` Essay Report `[uo_groups_essays]` - `orderby_column` Default: `Date` - `order_column` Default: `desc` For some of the above, please note that the values are stored in the browser cache, so you may not see changes immediately after updating shortcodes. Try a hard refresh or incognito mode for testing. ## Other important updates Group Leaders can now manage users and Group Leaders for child groups when they’re assigned to the parent group level. This makes it a lot easier to set Group Leaders up at the parent group only to manage hierarchies instead of adding them to every child group. In the [Manage Progress](https://www.uncannyowl.com/knowledge-base/manage-learner-progress/) report, we now show a spinner when a search is active to make the activity more clear to users on slower sites. A variety of WPML improvements are also now in the plugin. That wraps up the highlights for the [Uncanny Groups for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) release! The full list of updates is available in the [changelog](https://www.uncannyowl.com/knowledge-base/uncanny-learndash-groups-changelog/). **Categories:** LearnDash, News --- ### [5 Ways to Create Free Trials of Your LearnDash Courses](https://www.uncannyowl.com/5-ways-to-create-free-trials-of-your-learndash-courses/) **Published:** September 30, 2022 **Author:** Brendan Da Costa **Content:** Everyone learns at their own pace. Some students can run through an entire course in a day. Others might need a few weeks to really comb through the material. That’s why creating free trials for your [LearnDash](https://www.uncannyowl.com/share/learndash/) courses is one of the best ways to serve your students. It’s also the best conversion-boosting tool you didn’t know you had! In this step-by-step guide, we’ll show you five different ways to set up free trials of your LearnDash courses. While all methods offer their own advantages, we’ll focus on the methods that give students the most flexibility to learn at their leisure. ## **Why Offer Free Trials?** If you trust your product, why not let it speak for itself? Limited trials are one of the strongest marketing tools at your disposal. #### **Try, Don’t Deny** Free trials offer no-risk, hands-on experience. Not only do your students get a taste of your course material but they can also immerse themselves in your community, giving them another reason to sign-up after their free trial expires. For once, your students will be the ones doing the testing—and we know that you’ll pass with flying colors! #### **Get a Lead, Guaranteed** More often than not, users have to register in order to start their free trial. These new registrants represent valuable leads and you can start to gather information on their needs and preferences such as their mobile versus desktop usage. Even if they don’t become a paying customer after their trial expires, you can still use their contact information to extend exclusive deals. #### **Remitment Commitment** Imagine getting married to a perfect stranger. You have no idea who could be waiting at the other end of the aisle! That’s kind of what it’s like when you purchase an item you’ve never sampled before—minus the unbreakable vows, expensive rings and joint tax filings. Free trials give customers the opportunity to get to know your product before they elated say, “Yes! I will mar—buy your product!” #### **No Lack for Feedback** Use your free trials as an opportunity to make improvements. When did most free trial registrants become paying customers? When did they fall out of the free trial? You can even send a post-trial survey, asking your customers what they enjoyed about the trial and what they would have done without. For the unconverted, offer a special discount if they complete the survey or an extended free trial for more feedback. Convinced that you absolutely must offer free trials? Here are four simple methods to get the job done. ## **Method 1: LearnDash Course Access Settings** For [LearnDash](https://www.learndash.com/?irclickid=ymz2Kd0sIxyNW16WFPw8L0HgUkDTKawa3zmMRA0&irpid=1212251&utm_medium=affiliate&irgwc=1) users who want to set up one or two simple free trial courses—separate from their regular course offerings—this is the most straightforward method. LearnDash has a feature called *Course Access Expiration* built right into the Course Editor. Though this feature was designed for content protection purposes, you can also use it to create dedicated free trial courses. Here’s how it’s done: #### **Step 1: Create Free Trial Course** From your WordPress Admin Sidebar, navigate to *LearnDash LMS* > *Courses*. In the upper right-hand corner, click **Add New** and create your dedicated free trial course. #### **Step 2: Configure Course Access Settings** In the Course Editor, navigate to *Settings* and scroll down to *Course Access Expiration*. Toggle the button to the *On* position and set the length of your free trial in days.  That’s all! LearnDash will now grant access to the course for the specified number of days, starting on the user’s enrollment date. LearnDash also gives you a *Data Deletion* option so you can choose to either store or erase a registrant’s course data after their access has expired.  The *Course Access Expiration* setting works universally, meaning that it will apply to all users who register for the course. If you’re trying to set up a free trial for your existing courses, this method won’t suit your needs as you’ll have to create clones for each course for which you would like to offer a free trial. Additionally, your trial registrants won’t be able to transfer their progress from the trial course to its paid counterpart. ## **Method 2: Sample Lessons** [LearnDash](https://www.learndash.com/?irclickid=ymz2Kd0sIxyNW16WFPw8L0HgUkDTKawa3zmMRA0&irpid=1212251&utm_medium=affiliate&irgwc=1) offers another very simple way for setting up free trials. Instead of time-limiting trial content, you can create lessons within courses that are free for anyone to sample. Here’s how it’s done: 1. From your WordPress Admin Sidebar, navigate to *LearnDash* > *Lessons*. 2. Select the lesson(s) you would like to offer as a free sample or create new ones. 3. In the Lesson Editor, navigate to *Settings* then scroll down to the *Lesson Access Settings* section. 4. Toggle the button next to *Sample Lesson* to the *On* position. 5. Sit back and let your courses sell themselves!  This method for creating free trials of your LearnDash courses is perfect for letting your students learn at their own pace. However, there’s no way to restrict your trial content to signed-in users only without using another plugin such as [Restrict Content Pro](https://restrictcontentpro.com/?irclickid=ymz2Kd0sIxyNW16WFPw8L0HgUkDTKaW63zmMRA0&irpid=1212251&utm_medium=affiliate&irgwc=1), [MemberPress](https://memberpress.com/?utm_medium=aff-uncannyowl&utm_content=%2F&utm_source=automatorplugin.com) or [WooCommerce Memberships](https://woocommerce.com/products/woocommerce-memberships/). Using this method, you won’t always be able to track progress and follow leads. ## **Method 3: WooCommerce Trial Subscriptions** We’re going to create a free trial using a subscription and the built-in free trial feature in WooCommerce. For this method, you’ll need [WooCommerce Subscriptions](https://woocommerce.com/products/woocommerce-subscriptions/).  After you’ve purchased WooCommerce Subscriptions, download the [LearnDash WooCommerce integration](https://www.learndash.com/add-on/woocommerce/) for free. It’s one of the easiest ways to improve your LMS functionality and improve your students’ experience.  You’ll need to have an active LearnDash license and be logged in to [download the plugin](https://www.learndash.com/add-on/woocommerce/). But once you integrate your LMS with your e-commerce platform, your students will be gobbling up your courses faster than you can make new ones. #### **Step 1: Configure LearnDash WooCommerce Integration** LearnDash offers a [detailed step-by-step guide](https://www.learndash.com/support/docs/add-ons/woocommerce/) for setting up the integration but here’s a brief walkthrough: 1. After downloading the LearnDash WooCommerce plugin, from your WordPress Admin Sidebar, navigate to *WooCommerce* > *Settings*. 2. Click on the **Accounts & Privacy** tab. 3. Deselect the *Allow customers to place orders without an account* option. 4. Select the *Allow customers to log into an existing account during checkout* option. 5. Select the *Allow customers to create an account during checkout* option. #### **Step 2: Configure Your Subscription Product** 1. From your WordPress Admin Sidebar, navigate to *Products* > *Add New*. 2. Name your product—we named our product *Free Trial Subscription*—then scroll down to the *Product data* panel. 3. From the drop-down list, select *Simple subscription* and click the box next to *Virtual*. 4. Set the price, billing frequency and expiration period. As this is intended to be a free trial, set the *Sign-up fee* to $0.00. 5. Set the length of your free trial in the *Free trial* field. For example, we set our free trial to 14 days. After that period, the payments will begin unless the user cancels their subscription. But with course material this good, why would they?! 6. Next, thanks to the LearnDash WooCommerce integration, you can decide which of your LearnDash groups and courses this subscription product grants access to. 7. Finish configuring your subscription product then click **Publish**. That’s it! The integration really does make it that easy.  To create even more dynamic free trials—and to save yourself a ton of time—there are a couple of other methods we highly recommend. ## **Method 4: Automated Free Trials for Courses** If you want to offer free trial access to an existing course, you could register and unregister students manually—but, between marking papers and offering extra lessons, who has time for all that busywork? Thankfully, there is a better way to offer free trial access to one of your existing courses where students can save their progress after their trial expires. In order to automatically enroll and unenroll students, you’ll need a little help from [Uncanny Automator](https://automatorplugin.com/pricing/) and [WooCommerce](https://automatorplugin.com/integration/woocommerce/). Automator is the #1 WordPress automation plugin. Using *recipes*—combinations of triggers and actions—you can connect your favorite plugins and apps and automate your workflows to save time and money.  To create free trials for your LearnDash courses using Automator, you’ll need the Pro version. While the free plugin won’t be able to optimize your free trial registration process, it still offers plenty of functionality for LearnDash users. So, while we’re on the topic of free trials, download the free Automator plugin and try it out before making a decision. When you’re ready to upgrade, [click here](https://automatorplugin.com/pricing/) for Automator’s full pricing scheduling. #### **Step 1: Create a New Recipe** Once you’ve downloaded the plugin and registered your account, navigate to your WordPress Admin Dashboard. From the sidebar, navigate to *Automator* > *Add New*. In the pop-up window that appears, select *Logged-in users*.  #### **Step 2: Name Your Recipe** Start by naming your recipe so that you can easily identify it later on. We’ve named this recipe *Free Trial Registration*. #### **Step 3: Configure Your Trigger** Automator lets you decide how you would like to register users for your free trial. You could create a sign-up sheet with [WPForms](https://wpforms.com/?sscid=91k6_12mxv2&) or [Formidable Forms](https://formidableforms.com/?sscid=91k6_12myg2) or you could even register students for a free trial of an advanced course if they passed its prerequisites. In this example, we’ve simply chosen to register all new students in our free trial. In the *Triggers* panel, click **WordPress**. Then, from the drop-down list that appears, select *A user is created with a specific role*. Select the role that you’ve assigned to designate students and click **Save**.  Make sure that your trigger is set to *Live* before continuing. #### **Step 4: Configure Your Action(s)** In the *Actions* panel, select **LearnDash**.  From the drop-down list that appears, select *Enroll the user in a course*. Automator will then prompt you to select the course for which you would like to offer a free trial. Click **Save**.  Your action should look like this:  This action will get your new students started on their free trial—but how does it end? This is where the real magic of Automator comes in. Beneath this first action, click **Add another action** and **LearnDash** once again. From the drop-down list that appears, select *Unenroll the user from a course*.  Automator will prompt you to select a course. Choose the same course from your first action and click **Save**. Now you’ll want to make some minor adjustments to this second action so that it doesn’t fire until the end of your new student’s free trial. To do this, hover over the three dots in the right-hand corner of the action and click **Delay**.  An editor window will appear where you can choose to either schedule a date for the action to fire or set a time delay. To create a free trial, set a time delay. We’ve chosen a 14-day time delay to create a 14-day free trial. After you’ve set the length of your trial, click **Set delay**.  Your recipe is now fully configured to automatically enroll and unenroll new students in your free trial. But what about those eager beavers who are so impressed with your course that they decide to purchase it before the end of their free trial? You can add a filter to the second action to unenroll students based on whether or not they’ve purchased course access. Once again, hover over the three dots in the right-hand corner of the second action but this time, click **Filter**. In the pop-up window that appears, select *WooCommerce* then, from the drop-down list, select *The user has not purchased a specific product*. Automator will prompt you to select the product associated with granting access to your LearnDash course. Once you’ve selected the correct product, click **Save filter**.  Your free trial actions are now fully figured. Your *Actions* panel should look something like this:  #### **Step 5: Start the Trials!** With this recipe, Automator can handle all of the busywork of registering and unregistering students in your free trial. All that you have to do now is to toggle the recipe from *Draft* to *Live*. It should look something like this:  ## **Method 5: Automated Free Trials for Groups** It’s important that your students receive a broad education—and that they get an accurate sample of your course offerings during their free trial. If you want to offer a more generous free trial package than a single course, you can use the LearnDash Groups function in conjunction with Automator to enroll free trial participants in a whole curriculum worth of courses. #### **Step 1: Create a Free Trial Group** From your WordPress Admin Sidebar, navigate to *LearnDash* > *Groups* and click **Add New** in the upper right-hand corner. In the *Edit Group* page, click on **Courses**. You can use the field labeled *Group Courses* to add and remove courses from your free trial offering.  Once you’ve finished configuring the rest of your new trial group settings, click **Publish**. #### **Step 2: Create a New Recipe** Just as with the previous recipe, from your WordPress Admin Sidebar, navigate to *Automator* > *Add New*. In the pop-window that appears, select *Logged-in users*. #### **Step 3: Name Your Recipe** We’ve named this recipe *Free Trial Group Registration*. #### **Step 4: Configure Your Trigger** Just as with the previous recipe, you can choose to register trial participants using any number of apps and integrations. For this example, we’ve decided to register trial participants using [Fluent Forms](https://wordpress.org/plugins/fluentform/).  #### **Step 5: Configure Your Action(s)** In the *Actions* panel, click **LearnDash** then select *Add the user to a group*. Automator will prompt you to select the free trial group that you create in *Step 1* of this method. Once you’ve selected the correct group, click **Save**.  Beneath this first action to add the user to a group, click **Add another action**. From the options available, click **LearnDash** then, from the drop-down list, select *Remove the user from a group*.  Automator will prompt you to select a group. Once you’ve selected your free trial group, click **Save**. Next, hover over the three dots in the upper right-hand corner of this second action and click **Delay**. Set the delay for the duration of your free trial. You *Actions* panel should look like this:  #### **Step 6: Ready, Set, Trial!** We hope that your students are ready to sprint their way through your amazing free trial package! All you have to do now to start the learning marathon is toggle the recipe from *Draft* to *Live*. It should look like this:  ## **Who Doesn’t Love Free Trials?** Whether you just wanted to set up a simple free trial course or wanted to offer total—albeit temporary—access to your online school, there’s a method that lets your students learn at their own pace. And, just as importantly, lets you work at your own pace. By setting up free trials with Automator, however, you can make the most of your free trials. Add free trial participants to your mailing list with [Groundhogg](https://www.groundhogg.io/aff/329/) or [MailChimp](https://mailchimp.com/en-ca/?currency=CAD). Automatically tag the participants who didn’t opt-in after their free trial expired. And why not follow-up with an auto-generated coupon code if, after a few weeks, they still haven’t signed-up? Send free trial data to [Airtable](https://airtable.com/invite/r/gmc4Gkix) so you can better understand what drives conversions. With [Automator](https://automatorplugin.com/pricing/), you can do all of that—and a lot more—and still save time and money. What kinds of free trials would you like to offer your students? Let us know in the comments section below. **Categories:** Best Practices, LearnDash --- ### [Uncanny Codes 4.2 includes our most requested feature!](https://www.uncannyowl.com/uncanny-codes-4-2-includes-our-most-requested-feature/) **Published:** September 1, 2022 **Author:** Ken **Excerpt:** Uncanny Codes gives you the ability to generate codes that users can redeem for almost anything on your WordPress site. Originally built to provide a way for site admins to distribute codes for LearnDash course and group access, code redemption can now be redeemed for anything supported by Uncanny Automator, including memberships, achievements, store credit, coupon codes and much more. With the ability to generate hundreds or thousands of codes for use by businesses and organizations, one of our most requested features was the ability to cancel individual codes within a batch, without deleting the batch and associated records of redemption. **Content:** Uncanny Codes gives you the ability to generate codes that users can redeem for almost anything on your WordPress site. Originally built to provide a way for site admins to distribute codes for LearnDash course and group access, code redemption can now be redeemed for anything supported by Uncanny Automator, including memberships, achievements, store credit, coupon codes and much more. With the ability to generate hundreds or thousands of codes for use by businesses and organizations, one of our most requested features was the ability to cancel individual codes within a batch, without deleting the batch and associated records of redemption. Uncanny Codes version 4.2 now provides this feature, and it’s super easy to use. Simply go to **Uncanny Codes > Cancel codes**, then upload a CSV containing a column with the heading “code” and the list of codes to be cancelled. You can even upload the same file you download from a code batch. Uncanny Codes will ignore the other columns:  Once you’ve uploaded the .csv, you’ll see a confirmation of the codes that were cancelled:  Codes that have been cancelled can no longer be redeemed by users:  And that’s all there is to it! No more orphaned, valid codes floating around in the wild indefinitely or struggling to invalidate part of a code batch that has been refunded. Let us know what you think of the new feature in the comments below. **Categories:** LearnDash --- ### [Uncanny Codes: Form integrations and redemption updates](https://www.uncannyowl.com/uncanny-codes-form-integrations-and-redemption-updates/) **Published:** July 5, 2022 **Author:** Ryan Moore **Content:** It’s time for a big update to [Uncanny Codes](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/), our popular platform for generating, tracking and redeeming codes that can do almost anything in WordPress. It’s been some a longer than usual time since our last update, so in today’s release, we’re adding a lot of really important features that will transform how it’s used on many WordPress sites. ## New form integrations Use [Fluent Forms](https://fluentsupport.com/?ref=2001) or [Forminator](https://wordpress.org/plugins/forminator/)? You’re in luck, the Uncanny Codes 4.1 release adds new integrations both popular form builders. Here’s what the field looks like in Fluent Forms: [](https://www.uncannyowl.com/wp-content/uploads/2022/07/Uncanny-Codes-Fluent-Forms-Integration.png) And here it is in Forminator: [](https://www.uncannyowl.com/wp-content/uploads/2022/07/Uncanny-Codes-in-Forminator.png) It works just like our current integrations with Gravity Forms, WPForms and Formidable. Add the field to a form and code redemption will be processed on form submission. You can use the new fields on everything from single-field redemption forms for logged in users to registration pages that require users to enter a valid code in order to register on a website. ## Allow users to redeem the same code multiple times This is a big new feature, one that we know caused some user frustration in our previous versions. Up until now, Uncanny Codes would only let a single user redeem a code once, even if the code was set up to allow multiple redemptions. Originally we believe this was a good rule to have in place, as it prevented accidental redemptions by the same person and made codes a lot easier to manage. Our customers pointed out, however, that this limitation didn’t always make sense. Maybe users repeated a course or needed to unlock something more than once, so instead of them having to juggle multiple codes and figure out what’s been used and what hasn’t, they get one code. When they’re ready to repeat whatever action the user performs (e.g. reset course progress to take it again, create a new job listing, add seats to a group), the user can just keep using the same code. In those situations, where the might be multiple iterations over time of the same action, multiple redemptions of the same code make a lot of sense.  As there is some complexity here, this new feature is managed by batch and it’s not managed in the UI; it does require a snippet of code. Need more granular control or prefer to manage it at the code level? Here’s what you can leverage instead: ``` /** * Allow multiple code redemptions per user */ add_filter( 'ulc_codes_multiple_redemption_allowed', function ( $allowed, $codes_batch_id ) { /** * Only allow a certain number of times for certain batches. * Remove this "if" statement block to apply it globally. */ if ( 123 === $codes_batch_id ) { $allowed = true; // use true or false } return $allowed; }, 99, 2 ); /** * Number of times a code is allowed to be reused */ add_filter( 'ulc_codes_times_user_allowed_to_redeem', function ( $times, $codes_batch_id ) { /** * Only allow a number of times for certain batches. * Remove this "if" statement block to apply it globally. */ if ( 123 === $codes_batch_id ) { $times = 3; // any number can be used here } return $times; }, 99, 2 ); ``` The code examples above allow site owners to control whether or not code reuse by the same person is allowed, by code batch or globally, and if allowed, how many times a code in each batch can be reused by the same person. ## Override redemption limits When we originally introduced a way to sell codes generated by our plugin with WooCommerce, we intentionally built it to be simple and easy for purchasers to manage codes. We restricted purchased codes to a single use each, as that made it easier for purchasers to track redemptions and distribute codes. Based on customer feedback, however, sometimes some flexibility around the number of allowed redemptions is needed. With that in mind, today’s release allows an override for code redemption limits. This update leverages a new filter for maximum flexibility, so here’s a sample of how to use it: ``` add_filter( 'ulc_code_max_usage', function ( $max_usage, $type, $codes_group_id ) { // filter by a specific code batch, // or comment the restriction out for all batches // Automator type max usage // of 5 per code: if ( 10 === (int) $codes_group_id ) { return 5; } return $max_usage; // change to any number }, 99, 3 ); ``` With that snippet in place, you can unlock additional redemptions that would otherwise be allowed for the batch. We even change the output in the UI to make overrides and override values more obvious:  That’s it for new features in the Uncanny Codes 4.1 release, though there are also a few fixes and improved PHP 8.1 compatibility. **Categories:** LearnDash, News --- ### [What's new with Uncanny Groups](https://www.uncannyowl.com/whats-new-with-uncanny-groups/) **Published:** June 16, 2022 **Author:** Ryan Moore **Content:** The Uncanny Owl team has been hard at work adding some interesting new features to our popular [Uncanny Groups plugin](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) over the last few weeks. Given the scope of some of the changes, we want to walk users through and them outline how to use the new options. ## Group-specific welcome emails We’ve had feedback from some of our users that [global emails to welcome users to groups](https://www.uncannyowl.com/knowledge-base/configuring-group-emails/) just aren’t sufficient. Different groups may have different instructions and expectations, maybe an introduction by an instructor is warranted, perhaps it’s just different branding that’s important. Whatever the case, we have tried to address this gap by adding **group-specific welcome emails**. Now, when you edit groups, you’ll see a new section that looks like this on the edit group page in the *Group page* tab: [](https://www.uncannyowl.com/wp-content/uploads/2022/06/Group-specific_emails_for_LearnDash.png) It works just the way other welcome emails work on the Uncanny Groups > Settings page; the same tokens are also available. To use this new feature for specific groups: 1. Check the **Override “Add and invite (new user)” email** checkbox. This tells our plugin to use this email template instead of the global one. 2. Populate the *Subject* and *Body* areas with appropriate content. Now, when new students are added to this group, they’ll receive the contents of this email rather than the global one. If this section is not set up for any groups, we’ll just defer to the global email template. ## Group Leaders can send emails based on current course status This is a big change *that will affect your Group Leaders if you have granted access to send emails to students*. As a quick refresher, on the Group Management page you can add the group\_email\_button=”show” to your \[uo\_groups\] shortcode (or to the Gutenberg block) to expose a tool that Group Leaders can use to [send emails to students](https://www.uncannyowl.com/knowledge-base/group-management-page/#emailing-group-members). Up until Uncanny Groups 4.4, this email option let you target students by *group* progress (e.g. no group courses started, all group courses complete, group courses started but not complete) and send them emails. This was typically used to remind students that they needed to complete their assigned activities. What it lacked was a way to target specific courses only, like maybe a Group Leader only wanted to send reminders if users hadn’t finished any of 3 *specific* courses. Or maybe a Group Leader wanted to send a congratulations message to anyone who completed a specific course early. To address these other scenarios, here’s how the email tool has been changed: [](https://www.uncannyowl.com/wp-content/uploads/2022/06/LearnDash_Group_Leader_Email_System.png) Note the new *Group Courses* section. With it, you can choose 1 course, several courses, or the “Any course” option. This allows much better targeting of email recipients, but it is certainly a change to what Group Leaders are used to. There’s one other change here too: If there are multiple Group Leaders in a group, you can change the reply-to address. The Sender email always has to be the admin email address, since it should be linked to the site domain and will therefore improve email deliverability, but the reply-to address can be for the Group Leader of the sender’s choice. ## Required first and last names While first and last names were always required when Group Leaders added individual students to a group, the tool for bulk adding multiple students had those fields as optional. In today’s update, there’s a new attribute for the \[uo\_groups\] shortcode (and an option for the associated block): first\_last\_name\_required=”yes”. By adding that to the Uncanny Group Management page shortcode, the First and Last Name fields in the bulk add & invite users tool adds \* next to the associated column headings (to indicate those fields are mandatory) and values must be in those fields to add the users to the group. This change was suggested by Chris Hodgson at Discover Elearning to ensure that all users added to groups would have valid first and last names populated on the LearnDash certificates. ## Tighter Uncanny Automator integration If you’re not yet using [Uncanny Automator](https://www.uncannyowl.com/knowledge-base/group-management-page/#emailing-group-members), we have added a 1-click installer that installs and activates Automator with 1 click. Certainly Automator isn’t required, but given how much we keep adding to it for LearnDash groups, it has become an increasingly compelling option. Here are just a few of the Groups-related improvements we have added to Automator in the last week: - Run actions based on whether or not someone is a member of a group or its child groups (e.g. only send a certificate to a user that’s part of the Uncanny Owl group hierarchy, including users in the Dev Team group under the Uncanny Owl group parent) - Remove a user from **all** LearnDash groups in a single action/recipe - Remove the user as a leader of a group (perhaps a site sells Group Leader access to groups on a subscription basis, and when a subscription is cancelled or payment fails, there needs to be a way to remove Group Leaders from the group automatically) If that first example doesn’t sound possible, it might be because we only [added integration-specific conditions](https://automatorplugin.com/integration-specific-conditions-are-here/) to Automator Pro in May. With that support, now you can choose to only run actions if users: - Completed a specific LearnDash course - Enrolled in a specific LearnDash course - Are members of a LearnDash group - Are not in a specific LearnDash group - Are members of a group or its child groups - Are not members of a group or its child groups - Have not completed a specific LearnDash course [](https://www.uncannyowl.com/wp-content/uploads/2022/06/LearnDash_condition.png) ## And the rest It’s been some time since our last big update, so the Uncanny Groups 4.4 release has a lot of improvements behind the scenes, including: - The “[Group Product Swap](https://www.uncannyowl.com/knowledge-base/creating-pre-configured-learndash-group-licenses/#group-product-swap)” tool now supports Subscription product types as well as Group License products - Easier filter options to hook in and override column headings in the Group Course report (we’ll try to put together a blog post explaining how easy it is to add extra columns, like a certificate expiry date) - Improved WPML compatibility (including submission to WPML for certification) - Improved PHP 8.1 compatibility Full details are available in [the changelog](https://www.uncannyowl.com/knowledge-base/uncanny-learndash-groups-changelog/). **Categories:** LearnDash, News --- ### [Add Seats to Group Subscription, Excel Reports and More](https://www.uncannyowl.com/add-seats-to-group-subscription-excel-reports-and-more/) **Published:** April 20, 2022 **Author:** Ryan Moore **Content:** This is the [Uncanny Groups for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) update that many of our customers have been eagerly anticipating. After months of development, we’re excited to introduce a feature unique to our plugin that will completely transform B2B group subscriptions for LearnDash: support for adding seats to existing subscription-based groups. We wrestled with the logic for months. How would someone manage multiple subscriptions linked to a single group? What if one of several subscriptions was cancelled? Could we minimize the confusion of having multiple subscriptions for individual groups? And would all of this be easy enough for end users to understand? In terms of the visible changes to Group Leaders and admins, it’s all very straightforward. Administrators see a new section under *Uncanny Groups > Settings* to enable the option (we don’t want it to appear with no context for existing sites) and to set up a link so users can learn more about adding seats to subscriptions. We do recommend setting a page up with more details because the behaviour will be different depending on your settings around synchronization in WooCommerce Subscriptions. [](https://www.uncannyowl.com/wp-content/uploads/2022/04/Woo_Subscrition_Changes_for_Uncanny_Groups.png) And for Group Leaders, the Group Management page gets a new **Add Seats** button just like the one they’re probably used to seeing for groups purchased via one-time payment. It’s a powerful new module, but to make this work and to deliver what we think balances the user experience with technical restrictions, there are some tips to keep in mind as you use this new feature. Here are a few key points to consider: - Completing an order with additional seats for an existing group will create a new subscription in addition to the existing subscription. We strongly recommend enabling “Synchronise renewals” under WooCommerce > Settings > Subscriptions > Synchronization to align renewal dates across multiple subscriptions. This will avoid situations where customers are flooded with renewals on different days each month. - We modified subscription behaviour so that if 1 subscription associated with a group is cancelled, **all** subscriptions for that group are cancelled. We do warn Group Leaders about this at the time of cancellation, and it’s because there is no safe way to keep some seats active and not others. If a group with 20 students and 20 seats has a subscription for 4 seats cancelled, which 4 students would lose their seats? There’s no way to address this that would be intuitive to Group Leaders, so we cancel all subscriptions for the group. Similarly, when a subscription is *reactivated* for a group, we create a new, single subscription for the group that matches the number of seats required for the group. - The option to add seats to subscription-based groups is a global setting; it cannot be enabled and disabled for certain groups only. - It is *not* possible to add courses to subscription-based groups. That’s a different and more significant level of complexity that we may or may not be able to support in future. - The new functionality works with existing subscription-based groups, not only new groups. As this new feature is a huge change, we suggest testing it on a group before rolling it out and announcing it to all of your Group Leaders. ## It’s a big release We could have definitely made the Uncanny Groups 4.3 release a 5.0 update instead of 4.3, but we’re trying to keep numbering aligned with our other plugins. The new functionality for group-based subscriptions is amazing, but there are some other huge additions to this release. 1. **New report exports**. Many of the reports in Uncanny Groups previously had CSV export options. But why some and not others, and why CSV only? We conceded and added about 10 new export options to reports in Uncanny Groups. Please note that because these are new exports and new options, most are not shown by default and must be enabled using shortcode attributes. More information for each report is available in our Knowledge Base. 2. **New columns in the Course report**. It’s now possible to show the course enrollment date and group name in the Course report. These optional columns are invaluable with exports in particular, since group name is shown on the report inside WordPress but the export was missing the additional context. 3. **Choose score type in the Quiz report**. Would you rather show points in the quiz report instead of percentages? Now you can, thanks to the new “score-type” attribute. Use score-type=”percent” to show a percentage (the default) and score-type=”points” to show points instead. 4. **Automator set count updates**. The new version supports updating the seat count for a group when seats are removed via an Uncanny Automator action. 5. **Group subscription cancellation date** is now deferred until a subscription becomes *cancelled*, not just when it is *pending cancellation*. What this means is that users who cancel a subscription don’t lose the access they paid for immediately, instead the group access is only removed on the subscription end date. For a full list of updates and changes, make sure to check out the [Uncanny Groups changelog](https://www.uncannyowl.com/knowledge-base/uncanny-learndash-groups-changelog/). **Categories:** LearnDash --- ### [Q1 2022 Plugin Updates](https://www.uncannyowl.com/q1-2022-plugin-updates/) **Published:** March 31, 2022 **Author:** Ryan Moore **Content:** Our blog has been quiet this quarter, but that’s mostly because we’ve been so busy with updates. And just how busy have we been in Q1? Here’s a summary of our plugin releases: - [Uncanny Toolkit for LearnDash](https://en-ca.wordpress.org/plugins/uncanny-learndash-toolkit/): 1 release - [Uncanny Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/): 2 releases - [Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/): 3 releases - [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/): 4 releases - [Uncanny Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/): 2 releases - [Uncanny Automator](https://wordpress.org/plugins/uncanny-automator/): 9 releases - [Uncanny Automator Pro](https://automatorplugin.com/pricing/): 4 releases In total, that’s a whopping **25 releases** this quarter. Many have been pretty big releases too, so in case you missed the updates, we’ll cover some of the most exciting highlights below. ## Uncanny Toolkit Pro Our most popular add-on for LearnDash, [Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) gained a number of new additions. There’s a new module for [Autocomplete Lessons and Topics on WPForms submission](https://www.uncannyowl.com/knowledge-base/wpforms-auto-completes-lessons-topics/). We had it for Gravity Forms, now we’re extending support to WPForms as well. This is one of our more popular modules and a great way to require users to submit evaluation and feedback forms before course completion. The [Simple Course Timer](https://www.uncannyowl.com/knowledge-base/simple-course-timer/) added 4 new shortcodes. Instead of only outputting time at the course level, now there’s a way to show time spent on topics, lessons and quizzes. And there’s an additional shortcode to show total time a user has spent across **all** courses on a LearnDash site. The [Group Expiration](https://www.uncannyowl.com/knowledge-base/learndash-group-expiration/) module adds support for a new pre-text=”” attribute for the \[uo\_group\_expiration\_date\] shortcode. What this allows is for sites to show a text string before the expiration date, so instead of just showing the date, now it’s easy to add context to what it is. Finally, the [Enhanced LearnDash CSV Reports](https://www.uncannyowl.com/knowledge-base/enhanced-learndash-csv-reports/) gain support for new CEU and Course Meta columns. Yes, this one is *really* exciting. Beyond supporting additional records from our [Uncanny Continuing Education Units plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), this means you can pull in course attributes as new columns. So if you ‘re storing data against courses like instructor name, course identifier, semester, credit value, number of LearnDash steps, or really anything else, now you can include that information in the CSV export with all other records. [](https://www.uncannyowl.com/wp-content/uploads/2022/03/Enhanced_LearnDash_CSV_Report.png) ## Tin Canny This announcement is going to surprise a lot of people: There is now a tool for administrators and group leaders to analyze quiz questions to assess performance and quality. We call it the [LearnDash Quiz Question Analysis Report](https://www.uncannyowl.com/knowledge-base/learndash-quiz-question-analysis-report/). Yes, it’s for multiple choice (“single choice”) question types only, and yes, it’s intended for text-based questions and answers. Still, for the majority of sites, that’s more than sufficient and it finally provides a way to see, at a glance, how users are answering quiz questions. This is what it looks like: [](https://www.uncannyowl.com/wp-content/uploads/2022/03/LearnDash_Quiz_Question_Analysis.png) In case it’s not clear, the report outputs every supported question in a quiz, the correct answer, the distractors, and the percentage of students that chose each possible answer. It supports search, sorting, and CSV export. For Group Leaders, as you might expect, the quiz list only incudes quizzes associated with courses in the user’s groups and it outputs data for students in those groups. There’s no extra cost for this report, it’s available now for [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) users. Other Tin Canny updates this quarter were more subdued. There’s a new shortcode parameter to launch uploaded modules to a specific slide, uploaded modules now support defined vw and vh values for better layout control, the group quiz report supports negative scores, and more. ## Uncanny Groups Updates this quarter for [Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) mostly focused on new developer tools and refinements to existing capabilities. There are 10 new filters, there was an overhaul to how user search works for the Manage Progress report and multiple improvements behind the scenes. And did we mention that support for adding more seats to *subscription*-based groups is finally coming in early April? It’s almost ready… ## Uncanny Automator Our [Uncanny Automator plugins](https://automatorplugin.com/) are, of course, where the big magic happened this quarter. And while it’s not *directly* LearnDash related, everything we keep adding to those plugins extends what you can do with LearnDash and opens up countless new use cases for LearnDash sites. Let’s start with the highlights in the free version, and remember, all of these additions happened in Q1: - New integrations or integration support for [IFTTT](https://automatorplugin.com/integration/ifttt/), [Integrately](https://automatorplugin.com/integration/integrately/), [Tin Canny](https://automatorplugin.com/integration/tin-canny-reporting-for-learndash/), [Amelia](https://automatorplugin.com/integration/amelia/), [Twilio](https://automatorplugin.com/integration/twilio/), [MemberPress Courses](https://automatorplugin.com/integration/memberpress-courses/), [GoTo Training](https://automatorplugin.com/integration/gototraining/) and [GoTo Webinar](https://automatorplugin.com/integration/gotowebinar/). - Over 20 new triggers and actions, plus dozens of new tokens. - A complete overhaul of webhook support, with tons of new data formats plus nesting, JSON and XML support. - New support for [*updating* Google Sheets records](https://automatorplugin.com/knowledge-base/google-sheets/), making it easier to build dashboard reports for LearnDash inside Google Sheets. - An overhaul of the integration settings pages for easier management and better education. And our [Pro version](https://automatorplugin.com/pricing/) gained lots of new features too: - A new integration for [OptinMonster](https://automatorplugin.com/integration/optinmonster/). - 16 new triggers and actions, including several for [LearnDash](https://automatorplugin.com/integration/learndash/), like triggering recipes when a user’s access to a course expires and being able to remove students and a Group Leader from a group *and all of its children*. And that’s what we’ve been up to this quarter. And through all of that heavy development work, our support team still managed to achieve a “happiness” score of 93 in Q1! **Categories:** LearnDash, Uncanny Automator, Uncanny LearnDash Toolkit --- ### [A Tin Can LRS and LearnDash Reporting for WordPress!](https://www.uncannyowl.com/tin-can-lrs-learndash-report-toolkit/) **Published:** August 22, 2016 **Author:** Ryan Moore **Content:** Uncanny Owl is very pleased to introduce the easiest way to incorporate [Articulate Storyline](https://www.articulate.com/products/storyline-why.php), [Adobe Captivate](https://www.adobe.com/products/captivate.html) and [H5P](https://h5p.org/) modules into [LearnDash](https://www.learndash.com) courses! We don’t just embed modules; we created the very first Tin Can (xAPI) Learning Record Store that’s *completely native to WordPress*. There are no other applications to install. No endpoints to configure, no complex upload tools, no segregated reporting or any of the other complications that have been historically required to track Storyline, Captivate and H5p modules in WordPress. Easy Tin Can/xAPI and LearnDash reporting is now available with the [Tin Canny LearnDash Reporting](https://www.uncannyowl.com/downloads/tin-canny-reporting/) plugin. The [Tin Canny LearnDash Reporting](https://www.uncannyowl.com/downloads/tin-canny-reporting/) plugin is more than just a Learning Record Store. Capturing Tin Can statements is of no value unless there’s a great way to present the data—so we built a very powerful reporting tool that combines Tin Can data with all the rest of your LearnDash course data. In fact, even without the Tin Can piece, this is the most comprehensive reporting platform available for LearnDash sites. And that’s still not all—we wanted LearnDash and Tin Can integration to be as seamless as possible, so we modified LearnDash **Mark Complete** button behaviours so that they only appear after a user has completed all Tin Can modules on the page. (It’s all automatic; if are Tin Can modules on a page, we monitor Tin Can verbs to unlock the **Mark Complete** button at the right time.)[](https://www.uncannyowl.com/wp-content/uploads/2016/08/tin_can_report-1.png) Everything that’s needed for effective Tin Can use is included in the plugin, from a Storyline and Captivate upload tool (that detects Tin Can vs. non-Tin Can automatically and parses XML files for slide names) and a Learning Record Store to dashboard, course, user and Tin Can reports. Simply install the plugin and everything is ready to go. In fact, the only setting is to toggle whether or not to use Tin Can (as this plugin is also a fantastic LearnDash reporting tool without Tin Can). [](https://www.uncannyowl.com/wp-content/uploads/2016/09/course_list.png) The reporting capabilities really can’t be understated. Here are just a few new metrics that are available for LearnDash courses in the drill-down reporting tool: \[table id=4 /\] *\* Requires the [Simple Course Timer](https://www.uncannyowl.com/knowledge-base/simple-course-timer/) module from the [Uncanny LearnDash Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) modules.* And on the Tin Can side, all of the following are available as report filters: \[table id=5 /\] Head over to our [Knowledge Base articles](https://www.uncannyowl.com/article-categories/tin-canny-learndash-reporting/) to read more about how the upload tool, LRS and reporting tools work. [](https://www.uncannyowl.com/wp-content/uploads/2016/08/tin_can_by_user.png) At the time of writing, this is the first release of a very large plugin. We wanted to get the plugin out to users as soon as possible, so there a few features that we’ll be adding in the near future to round out the plugin. They include the following: - Group Leader reports (right now they’re for administrators only) - Additional export functions - A report builder that lets you choose your own columns and filters - Controls for disabling the Mark Complete integration (it’s currently forced if Tin Can is on a page) These are all coming in the near future! We will also be making performance improvements to query millions of records in under 5 seconds. Development testing included data for 10,000 learners, but we know we can make report generation even faster. *Please also note that the Learning Record Store is ONLY for on-site use (there is no endpoint for external Tin Can data) and has been built specifically to support Storyline, Captivate and H5P modules only.* [Get the Tin Canny Reporting for Learndash plugin now!](https://www.uncannyowl.com/downloads/tin-canny-reporting/#pricing) **Categories:** eLearning, Tin Can --- ### [Plugin Update Roundup](https://www.uncannyowl.com/plugin-update-roundup/) **Published:** December 15, 2021 **Author:** Ryan Moore **Content:** Today we pushed updates to 3 of our plugins ([Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/), [Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) and [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/)) and a fourth plugin update is coming tomorrow. While most of the changes are small fixes and improvements, there are some larger enhancements that deserve a bit more attention. ## Uncanny Toolkit Pro for LearnDash Perhaps the most interesting update is that the plugin, and specifically the Import Users module, no long requires LearnDash. This was done primarily to allow [Uncanny Automator](https://automatorplugin.com/) users to run imports that trigger actions as part of our new support for [running actions on users in bulk](https://automatorplugin.com/run-actions-on-wordpress-users-in-bulk/). The Toolkit itself isn’t moving away from LearnDash, but this will be a big win for Automator users that aren’t necessarily using LearnDash. The [Enhanced CSV Reports](https://www.uncannyowl.com/knowledge-base/enhanced-learndash-csv-reports/) module doubles the number of custom usermeta columns to 10. You can now run some very big reports with this tool with a lot of custom user profile data. The [Enhanced Course Grid](https://www.uncannyowl.com/knowledge-base/enhanced-course-grid/) module has the most changes, including all of the following: - There’s a new “hide\_title” attribute to turn off course titles in the grid. - Multiple categories can now be defined for inclusion in the shortcode or block, separated by commas - There are 7 new action hooks, including the following: `uo_course_after_short_description`, `uo_course_before_short_description`, `uo_course_before_course_title`, `uo_course_after_course_title`, `uo_course_after_featured_image`, `uo_course_after_grid_ribbon_price`, and `uo_course_after_grid_ribbon_text`. Overall, these changes add significantly more flexibility to what’s an already very flexible model for outputting course objects in a grid. ## Uncanny Groups The big new feature in today’s [Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) release is support for switching products in someone’s cart based on quantity. Why is this important? In the current model, when a user buys a group product, it always creates a group and adds them as a Group Leader. This is true even if a user buys a single seat for the group. What this means is that there must be 2 workflows for course purchase, one for a group, one for personal use by a user. A site might then have a “Buy for myself” button as well as a “Buy for a group” button on a course, since they are different products. Having to make this decision is an extra step though, and buyers are often confused by it. The new option to swap products allows sites to present a single product to prospective buyers without having to choose whether it’s for a group or themselves. Instead, if the quantity is 1, the system (optionally) assumes the purchase is for themselves and can swap in a Course or other product. If the quantity is greater than 1, the Group License product is used. When a quantity is selected and the product added to the cart, the swap (if the quantity is 1) is automatic. Here’s what it looks like when editing a group product: [](https://www.uncannyowl.com/wp-content/uploads/2021/12/Swap_course_product.png) For developers, the Uncanny Groups 4.2 release adds 2 new actions: `ulgm_before_license_group_is_inserted` and `ulgm_after_license_group_is_inserted`. There are also 3 new filters: `ulgm_license_group_linked_course_id`, `ulgm_license_group_courses_linked_in_order` and `ulgm_include_user_direct_enrolled_courses` (the latter for the Group Progress report). ## Other Improvements The [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) release adds new support for negative scores in the individual quiz report as well as support for SCORM module uploads that may be missing requirement elements, like a title. Across all plugin releases, there are also various compatibility fixes for LearnDash 3.6, PHP 8 and [WPML](https://wpml.org/). Yes, while our plugins have been translation friendly for years, we are starting to also add explicit WPML support where compatibility issues are reported. **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [How to Do More With LearnDash Achievements](https://www.uncannyowl.com/how-to-do-more-with-learndash-achievements/) **Published:** December 7, 2021 **Author:** Sandipan **Content:** [LearnDash](https://www.uncannyowl.com/share/learndash/) is one of the most popular LMS (Learning Management System) plugins in the WordPress industry. You can create and sell courses, award certificates, create quizzes, and much more using this powerful plugin. LearnDash offers a number of free and premium addons to enhance the functionality of your eLearning site. One such addon is **LearnDash Achievements**. It is a free plugin for LearnDash customers used for creating and displaying achievement banners on your eLearning site. In this article, we’ll introduce you to the LearnDash Achievements addon, discuss things you can do using this addon, and show how you can do more with the addon by connecting it to popular WordPress plugins. Let’s dive in. ## Introducing LearnDash Achievements Addon LearnDash introduced the [Achievements addon](https://www.learndash.com/add-on/achievements/) to add gamification features to your eLearning site. You can increase the engagement level of your students by awarding badges or points using this addon. It will also help you to improve the learning experience of your students. The Achievements addon offers a number of LearnDash course-specific triggers to choose from. Whenever a particular condition is triggered, the addon will automatically award points and/or a badge to the user. For example, you can award and show a specific achievement for completing a lesson or course. You can also display achievements for passing a quiz. You can even show an achievement banner when a student’s assignment is approved. The addon also supports triggers for non-course activities like reading an article, commenting on an article, user registration, and more. The LearnDash Achievements addon is available for free. You can [install and activate the addon](https://www.learndash.com/support/docs/add-ons/achievements-add-on/) by visiting the LearnDash Addons page on your WordPress admin panel (of course, you need a [valid license of LearnDash](https://www.uncannyowl.com/share/learndash/) to use the addon). ### How to Create Achievements Using the Achievements Addon It’s time to show you how you can easily create an achievement using this addon. We’ll be creating an achievement for enrolling in a course. First, you need to head over to **LearnDash** -> **Achievements** from the left sidebar of your WordPress admin panel. This will take you to the Achievements page where you’ll see 3 tabs: Achievements, Settings, and Shortcodes. ### Achievements The **Achievements** tab is the place where the admin can see and manage all the achievements. Let’s create a new achievement by clicking on the **Add New Achievement** button. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/add-new-achievements.png) A new page will open up now with a number of fields. In the **Add title** field, you should add the achievement name that’ll be displayed to the user. You can also add some text to the **Message** field. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/add-achievements-title-and-message.png) The **Details** section is the most important part of any achievement. The **Trigger** field controls when you want to award or display the achievement to the user. Go ahead to select **User enrolls into a course (LearnDash)** from the dropdown. This will open up some new fields. First, you need to select a course from the **Course** dropdown. Whenever someone completes that course, the achievement will be displayed to the user. You can also select **All Courses** to trigger the condition on completion of all the available courses. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/configure-details-box.png) Want to award points to the user? You can do that by configuring the **Points** field. And you can add any numeric value of your choice to that field. Note that the achievement points are useful for displaying leaderboards. Also, you can allow users to [buy a particular course using these achievement points](https://www.learndash.com/learndash-achievements-update/) (you need to enable the option in the course settings). Next, you can add an achievement image from the **Image** box. You can select a pre-built image by clicking on the **Select Image** link. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/select-achievements-image.png) Finally, you should click on **Publish** to make your achievement live. ### Settings Want to change the look of the achievement banner? Maybe, you want to match it with your brand colors. Just visit the **Settings** tab to change the background color, text color, and even the time after which the banner fades away. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/achievements-banner-settings.png) ### Shortcodes The LearnDash Achievements addon offers some shortcodes to display the user achievements: - **\[ld\_achievements\_leaderboard\]** – It’ll display the list of users along with their points. For example, \[ld\_achievements\_leaderboard=”10”\] will display the top 10 users based on their points earned. - **\[ld\_my\_achievements\]** – This shortcode can display all the achievements earned by a user. The Achievements addon also offers 2 Gutenberg blocks for displaying the individual achievements and the achievement leaderboard. ## Do More With LearnDash Achievements Addon The Achievements addon is a great addition to the LearnDash plugin. The addon makes it easy to create multiple achievements for different activities on your eLearning site. Presently, the Achievements addon offers limited course and non-course triggers only. Want to do more with the addon? You can use the [Uncanny Automator plugin](https://automatorplugin.com/) and the Achievements addon together to take your gamification strategy to the next level. In case you aren’t familiar with it, Uncanny Automator is a powerful automation plugin for WordPress. You can use it to connect WordPress plugins, WordPress sites, and third-party web apps together. You can use the Automator plugin to collect achievements across all the plugins and tools you use, not just LearnDash. Not only that, but you can also connect [our LearnDash plugins](https://www.uncannyowl.com/all-access-pass/) to the Achievements addon using the Automator plugin. By connecting Uncanny Automator and LearnDash Achievements together, you can award badges and points to otherwise unsupported achievements, including the following: - A user attends a live event (via [The Events Calendar](https://automatorplugin.com/integration/the-events-calendar/) or [Modern Events Calendar](https://automatorplugin.com/integration/modern-events-calendar/)) - Someone completes 3 specific courses in a series - A user submits a course evaluation form (built using [Formidable Forms](https://automatorplugin.com/integration/formidable-forms/), [WPForms](https://automatorplugin.com/integration/wp-forms/), or [Divi Forms](https://automatorplugin.com/integration/divi/)) - A user earns 50 credits (via [Uncanny Continuing Education Credits for LearnDash](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/)) - Someone redeems a code using [Uncanny Codes](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/) - A user purchases an eBook - Someone attends a webinar (via[ Zoom Webinar](https://automatorplugin.com/integration/zoom-webinars/) or [GoToWebinar](https://automatorplugin.com/integration/gotowebinar/)) The above examples are just some ideas – you can connect the Achievements addon to [75+ WordPress plugins and web apps](https://automatorplugin.com/integrations/) and create unlimited achievements for your users. That means the simple Achievements addon could replace the need for additional gamification tools, all at no extra cost beyond the LearnDash license. ## How to Integrate the Achievements Addon With Uncanny Automator Let’s briefly show you how to use the Uncanny Automator plugin and the Achievements addon together with the help of an example – **award an achievement to a user automatically for submitting a course evaluation form**. We’ll be using [WPForms](https://automatorplugin.com/integration/wp-forms/) as the form plugin in our example. However, Uncanny Automator supports a wide range of form plugins like [Contact Form 7](https://automatorplugin.com/integration/contact-form-7/), [Gravity Forms](https://automatorplugin.com/integration/gravity-forms/), [Fluent Forms](https://automatorplugin.com/integration/wp-fluent-forms/), [Ninja Forms](https://automatorplugin.com/integration/ninja-forms/), [Formidable Forms](https://automatorplugin.com/integration/formidable-forms/), and more. So you can use any form plugin of your choice – the process will remain the same. Whenever you need to automate a task using the Uncanny Automator plugin, you’ll have to [create a recipe](https://automatorplugin.com/knowledge-base/creating-a-recipe/). And every recipe needs at least one [trigger](https://automatorplugin.com/knowledge-base/managing-triggers/) and one [action](https://automatorplugin.com/knowledge-base/managing-actions/). In our case, the trigger will be a user submitting a form and the action will be awarding an achievement to the user. To create a new recipe, you need to head over to **Automator** -> **Add new** from the left sidebar of your WordPress dashboard (we’re assuming that you’ve already installed the Automator plugin). Next, you should select **Logged-in users** as the recipe type and then click on **Confirm**. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/select-recipe-type-logged-in-users.png) After that, you need to add a recipe title to the **Add title** box for future reference. ### Setting Up the Trigger The next step is to [configure the trigger](https://automatorplugin.com/knowledge-base/managing-triggers/) for our recipe. To get started, you should select **WPForms** from the list of available integrations. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/choose-wpforms-as-trigger-integration.png) Next, you need to select **A user submits a form** as the trigger option. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/select-trigger-option.png) Selecting that option will open up the **Form** field. Just select the course evaluation form from the dropdown and then click on **Save**. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/select-course-evaluation-form.png) You’ve successfully configured the trigger. Let’s set up the action in the next step. ### Setting Up the Action To configure the action, you need to first click on the **Add action** button. Next, you’ll have to choose **LearnDash** under **Select an integration** (the Achievements addon is part of the [LearnDash](https://automatorplugin.com/integration/learndash/) integration in Uncanny Automator). [](https://www.uncannyowl.com/wp-content/uploads/2021/12/select-learndash-as-the-action-integration.png) You’ll see a list of options now. Just find and click on the option **Award an achievement to a user**. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/select-action-option.png) This will open the **Achievements** dropdown field. Here you need to select the achievement you want to award to the user for submitting the course evaluation form. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/select-achievement-from-dropdown.png) Finally, you need to click on the **Save** button to make your action live. ### Publish the Recipe It’s time to publish our recipe. To do that, you need to change the toggle option in the **Recipe** box from **Draft** to **Live**. [](https://www.uncannyowl.com/wp-content/uploads/2021/12/wpforms-to-learndash-achievements-recipe.png) Your recipe is live now. That means, whenever someone submits the course evaluation form, you can automatically award an achievement to that user. ### Endnote The LearnDash Achievements addon is a powerful tool for adding game-like elements to your eLearning site. You can even use it with the Uncanny Automator plugin to connect it to [75+ WordPress plugins and web apps](https://automatorplugin.com/integrations/). And you can use the recipe example in this article as a reference to create multiple achievements for your eLearning site. The best part is you can add multiple triggers and actions to any recipe to create complex workflows using the [Uncanny Automator plugin](https://automatorplugin.com/pricing/). For example, you can add actions like getting a notification on [Slack](https://automatorplugin.com/integration/slack/) or adding the user to a mailing list to the above recipe. Have any questions on how to use Uncanny Automator and LearnDash Achievements addon together? Please feel free to comment below. **Categories:** LearnDash, Uncanny Automator --- ### [Group Hierarchy Reporting support for LearnDash](https://www.uncannyowl.com/group-hierarchy-reporting-support-for-learndash/) **Published:** November 4, 2021 **Author:** Ryan Moore **Content:** It’s time for a huge [Uncanny Groups for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) release that adds some important new tools for site owners, end users and developers. Let’s jump straight in to what’s new. ## Group Hierarchy support for LearnDash reports This has been a popular request for months now but we needed to be very careful about how we approached it. We didn’t want to slow report generation down too much, nor did we want to potentially confuse users with new views of consolidated data. As such, the very first thing we did was to make the hierarchy support **optional**. To use it, turn [on group hierarchies](https://www.learndash.com/support/docs/users-groups/groups/global-group-settings/#global_course_management_display_settings) in LearnDash **and** enable this new option in your Uncanny Groups settings page: [](https://www.uncannyowl.com/wp-content/uploads/2021/11/learndash-group-hierarchy-reports-setting.png) Once those changes are made, and you have some groups set up in hierarchies, visit your Group Management page on the front end. If you select a parent group from the drop-down (or you view it as a user with a single group that is a parent), you’ll see a new checkbox to include data from child groups in the table. When you check this, the page will reload and students across the current group *and all child groups* will be output in the table. The list of courses for the group will be updated to include courses from all child groups (as results from students in the table could be for courses not otherwise in the parent group), the functions in the Users menu are hidden (to avoid confusion around which group a student would be added to) and the checkboxes to select multiple users are also removed (students can only be removed from a single group at a time). For other report pages (including the course progress, quiz, essay and assignment reports), results from the child and parent groups will be combined automatically. These reports, when the “Include data from child groups in reports” setting is checked, will always show data that covers both the selected group and all of its children, no matter how many levels deep in the hierarchy. Please note that this is a global setting, it is not possible to add hierarchy support in reports for some groups only or for some reports only. The setting affects all groups and Uncanny Groups reports. ## [](https://www.uncannyowl.com/wp-content/uploads/2021/11/Group-Management-Export-CSV.png)Export the Group Management student list The Uncanny Groups 4.1 release adds support for exporting the list of students on the Group Management page to a CSV file. By default, an “Export CSV” menu option is added to the **Users** menu on the page. For users that hide or show elements using our shortcode attributes, this menu option can be hidden with the new csv\_export\_button=”hide” attribute for the Group Management page shortcode. ## Seat count changes when users are removed Normally, removing a user from a group (when it’s “allowed”) causes the seat count to increase. After all, since the user is no longer in a group, in most situations someone else should be allowed to take their place. In Uncanny Groups 4.1, there is now a setting so that users that have *completed* all courses for a group will not free up a seat when they’re removed from the group. Here’s the new option for this behaviour: [](https://www.uncannyowl.com/wp-content/uploads/2021/11/do-not-free-group-seats.png) ## Instant access to essay records We have added the ability to prepopulate the search field on the Manage Essays page based on a querystring passed into the URL of a page. As populating URLs should be dynamic for there to be much value with this feature, it is largely for use by developers. To use this new feature, add this string to the URL of a Manage Essays report page: ?search=%query% where “%query%” is a string to be entered in the search field, perhaps a username, status or lesson to pull up reports more quickly with the associated record. This helps to show users a specific view of data without them having to filter records themselves. ## New Developer filters We know many sites want to customize our reports to show different columns, filters and more. To help with this (as even if we add more optional columns, we’ll never make everyone happy), the following new filters have been added: Progress Report – `ulgm_progress_report_courses` Progress Report – `ulgm_progress_report_user_quizzes` Progress Report – `ulgm_progress_report_user_courses` Group Management page – `ulgm_is_reconcile_required` Group Course Report – `ulgm_group_course_report_user_course_data` Edit Group page – `ulgm_other_similar_orders_limit` These new additions will help developers more easily modify our report output to meet exact site requirements. We hope you enjoy the new enhancements! **Categories:** Learning --- ### [Expanded SCORM and xAPI/Tin Can support for LearnDash](https://www.uncannyowl.com/expanded-scorm-and-xapi-tin-can-support-for-learndash/) **Published:** June 24, 2021 **Author:** Ryan Moore **Content:** At long last, the [Tin Canny 4.0 release](https://www.uncannyowl.com/downloads/tin-canny-reporting/) is now available! And it includes one major new feature that will transform what’s possible for small businesses running [LearnDash](https://www.uncannyowl.com/share/learndash/) sites: **full SCORM and xAPI support**. Back when we originally launched Tin Canny it was an easy way for LearnDash sites to upload their modules from popular elearning tools like Articulate Storyline, Adobe Captivate and iSpring. Over the years we added support for Lectora, Quizmaker, H5P, Presenter, Rise… but all of that support was explicitly defined and we couldn’t offer fully SCORM or xAPI compliant solutions. [](https://www.uncannyowl.com/wp-content/uploads/2021/06/Tin-Canny-Uploader.png) ## Introducing full SCORM and xAPI/Tin Can support The 4.0 release *should* work with any standards-compliant SCORM 1.2, 2004 and xAPI / Tin Can file. It took us close to a year to get there, but the effort was absolutely worth it. Now we can stop saying “no” to people every time we get requests to add support for a custom authoring tool or something third party that we don’t support. Better yet, there’s no longer a need to ask! With this update, he’s a partial list of authoring tools we will be supporting with Tin Canny: - Camtasia - Elucidat - Adapt - Easygenerator Of course, there are hundreds of authoring tools in the market and we have only been able to test a small number of them, but if you were part of our testing group and provided file samples (thanks to those of you who did, especially [Dennis Hall](https://learning-templates.com/)!), we can confirm that Tin Canny 4.0 works well with all of those files. And, going forward, we will offer support for *any* SCORM and xAPI files, as long as they are standards compliant. The rest of the 4.0 release is far less exciting (and how could it not be?). [Course](https://www.uncannyowl.com/knowledge-base/course-report/) and [User](https://www.uncannyowl.com/knowledge-base/user-report/) reports will have improved performance on large sites and can now take advantage of object caching if it’s available. For some sites this will mean a *huge* performance difference ( note that cached results are only refreshed every 5 minutes), but unless you have at least several thousand users, the changes might not be as apparent. [](https://www.uncannyowl.com/wp-content/uploads/2021/06/Tin-Canny-Course-Report.png) There’s better translation support, LearnDash quizzes that were NOT linked to courses (it’s rare but does come up) are now shown in the front end quiz reports, and Tin Canny users *not* using SCORM and xAPI features will find fewer confusing references to those options. The rest of the changes can be reviewed at **Categories:** LearnDash, Tin Can --- ### [Uncanny Groups 4.0: Dozens of enhancements](https://www.uncannyowl.com/uncanny-groups-4-0-dozens-of-enhancements/) **Published:** June 22, 2021 **Author:** Ryan Moore **Content:** The [Uncanny Groups for LearnDash 4.0](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) release has been in development for months and focuses heavily on reliability and marginal improvements. And there are a *lot* of those; this release includes almost **50** plugin enhancements and fixes. Let’s jump right into some of what’s new: ### More form support Use [Gravity Forms](/share/gravityforms/), [WPForms](/share/wpforms/) or [Formidable Forms](https://formidableforms.com/)? Now you can add enrollment key redemption fields from the form editor so you can link any form in those plugins to key redemption in Uncanny Groups. [](https://www.uncannyowl.com/wp-content/uploads/2021/06/Uncanny-Key-in-WPForms.png) ### New edit group page options Ever wish administrators could see invited users? That’s in, so is the ability to see orders and products associated with groups that were created from a purchase. You can even *unlink* a group from an order if you no longer want users to be able to add courses or seats to a group via purchase. [](https://www.uncannyowl.com/wp-content/uploads/2021/06/Edit-Group-page-changes.png) ### New group list page options We modified the group listing under **LearnDash LMS > Groups** to show seat counts and to make enrollment keys downloadable by admins. Both of these changes will make it a lot easier for administrators to get data they need without drilling down into a group or switching to the front end Group Management page. ### Shortcode support in email templates Email templates now allow shortcodes to be used in emails to users. One interesting use case, and the reason for us building it, was someone wanting to use the group logo shortcode from [Toolkit Pro](https://www.uncannyowl.com/knowledge-base/ld-group-logo-list/) to brand emails to group members with the group logo. ### New system status tools Start with the Uncanny Automator 3.0 release, we’re adding a Status page to our plugins to provide useful troubleshooting information and database repair tools. Uncanny Groups 4.0 is the first of our [LearnDash](/share/learndash/) add-ons to support it. Look for the new **Uncanny Groups > System status** menu. ### Bulk discounts for WooCommerce Subscriptions We had a few requests for users wanting to use our [Bulk Discount system](https://www.uncannyowl.com/knowledge-base/configure-bulk-discounts/) for subscription purchases as well as one-time purchases. That’s now fully supported. ### New seat management system The changes are largely behind the scenes, but the entire seat and key management system was rebuilt to ensure that it remains reliable, even with some edge cases that could cause sync issues in the past. While it sounds small, this change represents dozens of hours of work and should negate the need for the **Reconcile seat count** button for upgraded groups. ### New license system The 4.0 release includes a new system to track expired plugins that we’ll be adding to our other plugins shortly. Currently, it’s not obvious on user sites when license keys have expired and we get a lot of tickets from confused users about why they can’t update. Now, directly on sites, we can show how many activations a license key has, whether or not it’s valid and when it expires. ### Other fixes and enhancements The above is already a huge list of improvements, but here are a handful of other changes in 4.0: - New developer filters for the quiz reports to make overrides easier - Password complexity was reduced for automatically generated passwords - Better Divi, LearnDash Notifications and WPML compatibility For the full list of changes in Uncanny Groups 4.0, make sure to check **Categories:** LearnDash --- ### [Two Factor Authentication for LearnDash Login Forms](https://www.uncannyowl.com/two-factor-authentication-for-learndash-login-forms/) **Published:** May 3, 2021 **Author:** Ryan Moore **Content:** Version 3.5 of the [Uncanny Toolkit for LearnDash](https://wordpress.org/plugins/uncanny-learndash-toolkit/) was released today with one very important addition: new support for Two Factor Authentication (2FA). We have had a number of requests to improve security options for our login module and we’re pleased to now support a direction integration with [WP 2FA](https://wordpress.org/plugins/wp-2fa/), a popular two-factor authentication plugin for WordPress. ## Easy 2FA for WordPress sites What this new integration means is that it’s easier than ever to integrate the flexible, clean login forms in the Uncanny Toolkit with the additional security of the WP 2FA plugin. It’s the best of both worlds. Using both plugins together, you can now: - Require some or all users to authenticate with 2FA (including setting rules by role) - Allow users to add a secondary login check using an email or supported 2FA app Beyond the additional account security, LearnDash site owners may appreciate that this additional security measure makes it much harder for users to share WordPress accounts. Here’s what the login process looks like for end users when they try to sign in: [](https://www.uncannyowl.com/wp-content/uploads/2021/05/2FA_Verification_Code.png) The use of two-factor authentication is of course completely optional, but we’ve made it as easy as possible to install the [WP 2FA plugin](https://wordpress.org/plugins/wp-2fa/) should you want to enable it. From the [Front End Login module](https://www.uncannyowl.com/knowledge-base/front-end-login/) settings page in Uncanny Toolkit > Modules, there’s a 1-click install option at the very bottom of the settings. Once installed, the Front End Login module will confirm it’s active and add an easy link to set up 2FA settings. [](https://www.uncannyowl.com/wp-content/uploads/2021/05/Two_Factor_Authentication_for_WordPress.png) Please note that this is an integration only, meaning we have added easy plugin installation, configuration and style for the 2FA plugin, but the 2FA behaviours, text and other settings remain with the other plugin. ## Other changes in Uncanny Toolkit 3.5 In anticipation of the upcoming [Uncanny Automator](https://automatorplugin.com/) 3.0 release, we have made it easier than ever to add Automator recipes from the Toolkit. Users can get started with a new one-click install process so you don’t even have to leave your Toolkit settings. This release also includes a number of updates related to LearnDash 3.4.x changes. We have seen a lot of changes in LearnDash over the last 2 months related to LearnDash 3.4 fixes, and a handful of recent changes have caused issues that require updates on our side. For this reason, the Uncanny Toolkit 3.5 release is *highly* recommend for all users of LearnDash 3.4.0 and above, especially if you use our [Topics Autocomplete Lessons](https://www.uncannyowl.com/knowledge-base/topics-autocomplete-lessons/) module. **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [Uncanny Codes 4.0 for WordPress](https://www.uncannyowl.com/uncanny-codes-4-0-for-wordpress/) **Published:** March 16, 2021 **Author:** Ryan Moore **Content:** Our [Codes plugin for WordPress](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/) has gone through many iterations since we first launched it in 2016. It started off as a simple code redemption tool to unlock [LearnDash](https://www.uncannyowl.com/share/learndash/) course and group access. Then we linked codes to registration and purchase, added expiry dates, allowed custom codes, then built in advanced code generation and redemption rules. Despite being a very capable and scalable plugin, it was never particularly popular and was limited to LearnDash use. With the release of Uncanny Codes 4.0, however, everything changes. ## Introducing Uncanny Codes 4.0 For about a year, the Uncanny team has wrestled with 2 big questions about our [Codes plugin](https://www.uncannyowl.com/downloads/uncanny-learndash-codes/): - How far could the plugin go if we supported more than LearnDash alone? - What if instead of building integrations for other plugins we just linked it to [Uncanny Automator](https://automatorplugin.com/)? Uncanny Codes 4.0 will answer those questions, because the plugin no longer requires LearnDash and we have linked the redemption of codes and code batches to Automator recipes. (For anyone not familiar with Uncanny Automator, it’s a plugin that connects lots and lots of things together. When something happens somewhere, Automator can make something else happen, like the redemption of a code adding a user to a membership level.) **Let’s review some of the biggest new features in Uncanny Codes 4.0.** ### Seamless Uncanny Automator integration This is what makes our codes plugin better than anything else on the market. When users redeem codes, we can make almost *anything* happen, and we really mean that. Adding just the [free version of Uncanny Automator](https://wordpress.org/plugins/uncanny-automator/) lets you connect code redemption to dozens of popular plugins with 100+ actions *as well as* thousands of apps with [Zapier](https://zapier.com/) and webhook support (yes, all in the free version of Automator). [](https://www.uncannyowl.com/wp-content/uploads/2021/03/Edit_recipe_‹_codes_uncannycloud_com_—_WordPress.png) Here are just a few examples of what you can do with code redemption and the free version of Automator: - Add a tag to a user in a CRM (e.g. [Groundhogg](https://automatorplugin.com/integration/groundhogg/), [FluentCRM](https://automatorplugin.com/integration/fluentcrm/)) - Award an achievement or badge ([BadgeOS](https://automatorplugin.com/integration/badgeos/), [GamiPress](https://automatorplugin.com/integration/gamipress/), [myCred](https://automatorplugin.com/integration/mycred/)) - Add the user to a group ([BuddyBoss](https://automatorplugin.com/integration/buddyboss/), [BuddyPress](https://automatorplugin.com/integration/buddypress/), [wpForo](https://automatorplugin.com/integration/wpforo/)) - Add a membership level ([Restrict Content Pro](https://automatorplugin.com/integration/restrict-content/), [Wishlist Member](https://automatorplugin.com/integration/wishlist-member/), [WooCommerce Memberships](https://automatorplugin.com/integration/woocommerce-memberships/)) - Mark a course complete or award CEUs ([LearnDash](https://automatorplugin.com/integration/learndash/), [MasterStudy LMS](https://automatorplugin.com/integration/masterstudy-lms/), [Uncanny CEUs](https://automatorplugin.com/integration/uncanny-continuing-education-credits-for-learndash/)) - Change a user’s WordPress role - *Any combination* of the above and any other supported actions in 50+ plugins and apps If you think that’s impressive, what’s possible when you add an [Automator Pro](https://automatorplugin.com/pricing/) license is mind-blowing. Keep in mind too that a single code redemption can do *multiple* things, so you could add a user to 3 courses, add a CRM tag *and* add the user to a social group. Try doing that with any other plugin! [](https://www.uncannyowl.com/wp-content/uploads/2021/03/Code_redemption_actions.png) ### Sell Codes for WordPress One frustration we know users of Uncanny Codes have had for some time is how to handle distribution of codes. Once generated, getting codes in the hands of teachers, partners, affiliates and other clients has been a manual process. With 4.0, you can [sell codes using WooCommerce](https://www.uncannyowl.com/knowledge-base/sell-uncanny-codes/). [](https://www.uncannyowl.com/wp-content/uploads/2021/03/My_account_–_codes_uncannycloud_com.png) Let’s review what this means in practice. You, as a site administrator, generate 10,000 codes and define exactly what they will do. Then you can create a WooCommerce “Codes” product, and whenever someone buys a certain quantity, they receive that number of codes from the batch. They can even track whether or not they’ve been used. So say, for example, you create those 10,000 codes that you want to unlock access to 3 courses and a special membership level. A client organization then buys 100 of them. They receive an email with a CSV file of those codes (as well as a list in plain text) that they can distribute to their staff, so now they have an easy way to get 100 people access to those courses and membership. Another way to look at it might be as a way to sell 100 gift cards that are way easier to redeem (and far more flexible) than 100% off coupon codes. ### More Form plugin support Earlier versions of Uncanny Codes supported [Gravity Forms](https://www.uncannyowl.com/knowledge-base/using-codes-gravity-forms/) only as a way to redeem codes during registration. But why limit code redemption to registration, and why just Gravity Forms? Codes 4.0 adds new support for [WPForms](https://www.uncannyowl.com/knowledge-base/using-codes-with-wpforms/) and [Formidable Forms](https://www.uncannyowl.com/knowledge-base/using-codes-with-formidable-forms/), both fantastic plugins. This will open up many new redemption opportunities, and you can tie any form submission to code redemption. Only want to allow users to register on your site with a valid code? No problem. Just want a simple redemption form for signed in users? That’s easy too. [](https://www.uncannyowl.com/wp-content/uploads/2021/03/Codes_for_Formidable_Forms.png) We add new Uncanny Codes field types to the form plugins we integrate with. Just add the field to your forms, make the field mandatory (if it is), and Uncanny Codes will take care of the redemption process. ### A new way to generate codes With all the new support for different code types and Automator we needed a new interface to make generation more intuitive. This wizard approach to code generation makes the process less confusing and connects Automator code generation to recipe creation. It works really smoothly. [](https://www.uncannyowl.com/wp-content/uploads/2021/03/Generate_codes_for_WordPress.png) Code batches now also have names. It makes them far easier to identify and the names were really essential to keep Automator recipes and code batches linked to products organized. ### Let’s talk about Uncanny Automator Pro You don’t need Uncanny Automator Pro to use Uncanny Codes, but it definitely makes it a far more full-featured codes solution. When those 2 plugins are paired, here are a few more examples of things that can be unlocked with codes: - Register the user in a [Zoom meeting or webinar](https://automatorplugin.com/integration/zoom-meetings/). Simply enter a code, no registration form, and the user will instantly get the confirmation from Zoom. - Add the user to a private mailing list in [Mailchimp](https://automatorplugin.com/integration/mailchimp/). - Add the user to a membership ([MemberPress](https://automatorplugin.com/integration/memberpress/), [Paid Memberships Pro](https://automatorplugin.com/integration/paid-memberships-pro/)). - Reset a user’s attempts for a quiz (LearnDash, LifterLMS). ### Check code redemption status We had valuable feedback from some customers that users that were issued codes had trouble identifying which codes had been used and which ones hadn’t. If you want users to be able to check the redemption status of a code (without redeeming it) in the front end, you can drop this shortcode in a page: \[uo\_user\_redeem\_code check\_only=”yes”\] The system will check the status of that code and return one of 4 values: Invalid code, Code redeemed, Code available or Code expired. Purchasers of codes also have a new option in their Orders page in WooCommerce to check available and redeemed codes, but this new shortcode will be useful for codes that are distributed manually and not sold. ## Try Uncanny Codes For existing users of Uncanny Codes, we highly recommend trying version 4.0 out on a Staging site before you update your live site. Uncanny Codes 4.0 is 100% backwards compatible, but this is a *huge* release that changes a lot about code creation, editing and management, so we highly encourage testing things first and reviewing all the new articles in our [Knowledge Base](https://www.uncannyowl.com/article-categories/uncanny-learndash-code/). A full list of changes is available here: **Categories:** LearnDash --- ### [Uncanny Groups 3.10: Easier classroom management](https://www.uncannyowl.com/uncanny-groups-3-10-easier-classroom-management/) **Published:** February 17, 2021 **Author:** Ryan Moore **Content:** There’s one thing in our [Uncanny Groups](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) plugin that I felt had been a gap for some time, not just in our plugin but in WordPress in general: Why do users always need a valid email address to set up an account? The answer is straightforward, of course, it’s an identifier and allows users to reset their passwords independently. But in many K-12 classrooms, manufacturing and industrial environments, students simply don’t have email addresses. This makes using [LearnDash](https://www.uncannyowl.com/share/learndash/) and our plugins exceedingly difficult. We did offer a [workaround for CSV imports](https://www.uncannyowl.com/knowledge-base/group-management-page/#Adding_Users_in_Bulk); files can include a password column and this password would be set for new users, allowing administrators and Group Leaders to create users that didn’t actually need an email address. With this approach, account info (email and password) could be set up and given to students directly so that setting up a password by email confirmation wasn’t needed. Privacy concerns aside, this at least offered a path for students without an email address to use LearnDash and our plugins. CSV files are hard to work with though and outside the technical abilities of many Group Leaders. Enter [Uncanny Groups for LearnDash 3.10](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/). ## Password field in Add Users New in the 3.10 release is the ability for Group Leaders and Administrators to set passwords for new users when they add them. This applies to [adding users individually and adding multiple users at once](https://www.uncannyowl.com/knowledge-base/group-management-page/#Adding_Users_to_Groups). It sounds simple, but giving teachers, managers and instructors an *easy* way to set new student passwords means that a valid student email address is no longer required. Instead, Group Leaders can simply set up a fake email address (e.g. student@1234.com) along with a password and the student associated with that account can now sign in and take courses. [](https://www.uncannyowl.com/wp-content/uploads/2021/02/LearnDash_Group_User_Passwords.png) There are some caveats: - Once set, students and Group Leaders cannot change passwords (don’t forget to store a record of the password!) - Students without a valid email address cannot receive notifications or announcements - Passwords can only be set for new users; if a password is set for an existing user it will be ignored And there’s a bonus (also a huge security risk, use this cautiously): the #Password token in the new user notification email will include the password set by the Group Leader if it’s in the email template. ## Improved WooCommerce order autocompletion We made a few changes here to make it easier for orders of Uncanny Group products (specifically Group License and Group Course) to be autocompleted. Here’s what we changed: - The “Virtual” and “Downloadable” checkboxes on the edit product page are no longer hidden. This makes it easier to override settings for exceptional cases. New Group License and Group Course products default to “Virtual” (not Downloadable). - There’s a new setting under Uncanny Groups > Settings for “Autocomplete Uncanny Groups orders”. If this is checked, our plugin will automatically set the order status of orders that include Uncanny Groups (and other virtual products if included) to “Completed”. In some cases a third party plugin was needed to autocomplete orders, so this new setting eliminates the need for a plugin override. [](https://www.uncannyowl.com/wp-content/uploads/2021/02/Autocomplete_LearnDash_group_orders.png) ## Better links between groups and orders This might be primarily for our team, but we thought other users would also benefit from an easier way to move between a LearnDash Group and the associated WooCommerce order (if the group was created by our plugin from a WooCommerce purchase). In version 3.10, it’s now easy to see the order associated with a group and vice versa using new links added to the edit order and edit group pages in /wp-admin/. These details, including the purchase history, will make it a lot easier to audit the current status of a group.[](https://www.uncannyowl.com/wp-content/uploads/2021/02/Uncanny_Groups__Woo_Orders.png) ## Fixes and updates Our plugins aren’t fully compatible with PHP 8.0 yet, but we’re getting there, and this release adds some important compatibility fixes. We also experienced a *very* unfortunate (and surprising!) conflict with the [Yoast SEO 15.8 update](https://en-ca.wordpress.org/plugins/wordpress-seo/) and buying groups from the [Buy Courses/Groups page](https://www.uncannyowl.com/knowledge-base/group-leader-purchase-experience/) that’s fixed in this release. Additional details about the release are in the [Uncanny Groups changelog](https://www.uncannyowl.com/knowledge-base/uncanny-learndash-groups-changelog/). **Categories:** LearnDash --- ### [Tin Canny 3.6: Microlearning for LearnDash xAPI & SCORM courses](https://www.uncannyowl.com/tin-canny-3-6-microlearning-for-learndash-xapi-scorm-courses/) **Published:** February 16, 2021 **Author:** Ryan Moore **Content:** It’s time for a new Tin Canny update! Version 3.6 adds support for microlearning using Single Page LearnDash courses, more flexible user details in reports, new column sorting options, a more visible X icon for modules in a lightbox and more. ## Single page xAPI & SCORM LearnDash courses Today’s [Tin Canny 3.6](https://www.uncannyowl.com/downloads/tin-canny-reporting/) release adds support for something [LearnDash](https://www.uncannyowl.com/learndash/share) and Tin Canny users have been wanting for years: the ability to build standalone courses with Articulate Storyline, iSpring, H5P and other module types without having to use LearnDash lessons and topics. What does that mean? Well, with most (non-WordPress) LMS platforms, you can upload self-contained zip files and that uploaded module becomes the entire course. A user sees the course name, launches that uploaded course in a new window or lightbox, and that’s it — no digging into lessons or topics first, it’s just the course. LearnDash, however, normally requires that courses be structured into a hierarchy of WordPress posts that requires at least one “lesson” beneath a course. The SCORM or xAPI file would then be uploaded inside the lesson or topic, so students would have to click through a “course” level first that sometimes served no purpose. [](https://www.uncannyowl.com/wp-content/uploads/2020/12/LearnDash_Single_Page_Course.png) Tin Canny 3.6 adds support for our [Single Page Courses module in Toolkit Pro](https://www.uncannyowl.com/knowledge-base/single-page-courses/), allowing uploaded SCORM and xAPI files right to the course level while still allowing proper LearnDash tracking. Support is available for these content types: - Articulate Storyline - Articulate Rise - Adobe Captivate - iSpring - H5P - Lectora Inspire The use of Single Page Courses for microlearning does require that the [Toolkit Pro for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) plugin be installed, active, and the module turned on. ## Customizable user details in reports We’ve seen an increase in tickets with users not wanting to use our default “Display Name” record when we show student names in reports. Many sites would rather use first name and last name, perhaps even hide email address for privacy reasons. Tin Canny 3.6 allows site admins to choose which values and/or columns should be displayed in user listings of the Course and User reports with these settings: [](https://www.uncannyowl.com/wp-content/uploads/2021/02/User_settings_in_Tin_Canny_Reports.png) ## Sort all columns in the User report Adding the optional “Sort by % Complete” setting to [User reports](https://www.uncannyowl.com/knowledge-base/user-report/) some time ago led to requests for sorting on other columns, as it should. This is still a setting we suggest using with caution on large sites, as there is a slight performance hit on load, but if **Enable Sorting by % Complete** in Tin Canny settings that all columns in the User report will become sortable. Look for the arrow icons in column headers when accessing the User report to sort by column and show current sort settings. [](https://www.uncannyowl.com/wp-content/uploads/2021/02/Sort-LearnDash-User-report-columns.png) ## Other Tin Canny 3.6 changes To round out this release, here are a handful of other highlights: 1. The Gutenberg block for Tin Canny content has a new Module ID indicator. This makes it a lot easier to reconcile uploaded modules in LearnDash courses with uploaded modules on the Management Content page in /wp-admin/ (useful when deleting content that’s no longer required or replacing modules with newer versions). With our Classic Editor support this was always easy, as the shortcode included the ID, but now management is easy with Gutenberg too. 2. We improved performance significantly in a recent update but on a very few number of sites (perhaps 2-3%) our old, slower method of tracking was preferred. There’s now a switch in the settings to use a compatibility mode if some Tin Canny uploads aren’t catching all statements when they’re closed. 3. Error messages are now more descriptive if an error is encountered during a Tin Canny module upload. 4. The Settings page has been completely reorganized. 5. The X icon to close modules in a lightbox has been made more visible. As always, the full changelog is available at **Categories:** LearnDash, Tin Can --- ### [Toolkit Pro 3.7: Usermeta in reports, transcript changes and more](https://www.uncannyowl.com/certificates-in-transcripts-and-usermeta-learndash-csv-reports/) **Published:** February 12, 2021 **Author:** Ryan Moore **Content:** We try to avoid Friday releases where we can, but with the upcoming holiday weekend in Canada and some exciting changes from [LearnDash](https://www.uncannyowl.com/share/learndash/), we couldn’t wait to get version 3.7 of the [Uncanny Toolkit Pro plugin](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) out. It’s a big release with several really compelling new features. ## Group Drip notification changes We do need to start the list of new features with a change that [Group Drip](https://www.uncannyowl.com/knowledge-base/drip-lessons-by-ldgroup/) users may need to make on their sites. LearnDash is releasing version 1.5 of their [Notifications](https://www.learndash.com/support/docs/add-ons/notifications/) plugin next week, which is a big overhaul and improvement. That’s great news, but because of how it was rearchitected, it does break compatibility with existing notifications linked to our Group Drip module. Any current notifications on sites set up to alert users when lessons are available to the group will stop working, but there is good news: we have a new trigger available to support Group Drip notifications. If you upgrade to LearnDash Notifications 1.5 *and* want notifications to be sent to group members when lessons become available via group drip, you must create new notifications with this new trigger: “A scheduled lesson is available to user with Uncanny Drip by Group”. If you don’t use group drip notifications, no changes are necessary. [](https://www.uncannyowl.com/wp-content/uploads/2021/02/LearnDash_Group_Drip_Lesson_Notification.png) ## Custom usermeta in LearnDash CSV reports We keep adding more column options to LearnDash reports, and in today’s 3.7 release we’re adding up to 3 new columns that can output *any user data you want*. If you store custom fields for users in your system, like maybe a department, manager name, job title, whatever, now you can include columns with those records in LearnDash CSV reports using the [Enhanced LearnDash CSV Reports module](https://www.uncannyowl.com/knowledge-base/enhanced-learndash-csv-reports/). Here’s what it looks like: [](https://www.uncannyowl.com/wp-content/uploads/2021/02/Usermeta_Keys_LearnDash_Exports.png) To add these extra columns you will need to know the key for the record in the usermeta table, but if you’re storing custom fields you probably know what keys to use. If you’re not sure, look at whatever is capturing that record (perhaps a form or checkout process) and see if it shows the usermeta key for the record you need. ## Certificates in LearnDash Transcripts We made some really interesting [LearnDash Transcript](https://www.uncannyowl.com/knowledge-base/learner-transcript/) module changes in this release, and before any current users panic, these new records are *optional*. We know you’ll want to use them, but they can be turned on and off. First up is the addition of a Certificate column to the Transcript output. It does exactly what you expect; if the column is shown and the user has an associated course certificate, we show an icon with a link to the certificate. This is a really handy way for users to retrieve their certificates, including from courses in which they’re no longer enrolled but do have a completion record. The Certificate column is automatically hidden from the print view, where it wouldn’t make sense. [](https://www.uncannyowl.com/wp-content/uploads/2021/02/Modules_‹_beta_uncannycloud_com_—_WordPress.png) ## Custom Credits in LearnDash Transcripts We’ve been hard at work lately with [amazing new features](https://www.uncannyowl.com/award-ceu-credits-for-anything/) for our [Continuing Education Credits plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), and now that it’s easy to track custom credits, we wanted to make it easy for users to *see* their consolidated training records. In Toolkit Pro 3.7, we have added the ability to include custom learning credits in student transcript. If our Continuing Education Credits is installed and enabled, and a user has been awarded credits, we will now (optionally) add new rows for those records. Please note that because records like scores and steps are not applicable for custom credit records, we output “n/a” in those columns for custom records. ## Group expiration shortcode We have offered the [Expire LearnDash Group module](https://www.uncannyowl.com/knowledge-base/learndash-group-expiration/) for quite some time, but we always relied on email notifications to let users know when it was expiring. This made planning difficult for Group Leaders and members, so in today’s release we have added a new shortcode. Here are some examples of usage: ``` [uo_group_expiration_in] //Show countdown to expiry date if set and user is only part of 1 group [uo_group_expiration_in group-id="xx"] //Shows countdown to expiry date if set and user is part of the associated group [uo_group_expiration_in pre-text=""] //Override default "Group Access Expires in" text in shortcode output [uo_group_expiration_in group-id="" pre-text=""] //Combine the above attributes ``` When the Expire Group module is enabled this shortcode is available automatically. The default text to include is set from the module settings:  ## Other changes As always, all new features, updates and fixes are included in the [changelog](https://www.uncannyowl.com/knowledge-base/learndash-toolkit-pro-change-log/). Two notable additions are support for [Single Page Course](https://www.uncannyowl.com/knowledge-base/single-page-courses/) settings for non-admins (like Instructors in the [Instructor Role plugin by Wisdm Labs](https://wisdmlabs.com/instructor-role-extension-for-learndash/)) and outputting course-level quizzes in the [Course Dashboard](https://www.uncannyowl.com/knowledge-base/learndash-course-dashboard/) module. **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [Uncanny Groups for LearnDash 3.9 Update](https://www.uncannyowl.com/uncanny-groups-for-learndash-3-9-update/) **Published:** February 2, 2021 **Author:** Ryan Moore **Content:** The version 3.9 update of the [Uncanny Groups for LearnDash plugin](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) includes some interesting updates that may really transform how the tool is used by some customers. Given the magnitude of the changes, this is also one that we recommend testing on a Staging site first. Let’s jump right in to what’s new in the release and how it might affect your site. ## BuddyBoss Social Group sync You asked, we listened. A *lot* of people use the [BuddyBoss theme and platform](https://www.buddyboss.com/) with our Uncanny Groups plugin. BuddyBoss does include a sync tool for LearnDash groups, but it doesn’t work properly when users are added or removed from groups managed by our plugin. It also doesn’t sync LearnDash groups created with our plugin to new BuddyBoss groups. [](https://www.uncannyowl.com/wp-content/uploads/2021/02/BuddyBoss_Groups_Sync_with_LearnDash_Groups.png) So, in the Uncanny Groups 3.9 release, here’s what’s new **if LearnDash Group Sync and Auto Create Social Group** settings are enabled in *BuddyBoss > Integrations > LearnDash* on a BuddyBoss site: 1. When a LearnDash group is created by the Uncanny Groups plugin, an associated BuddyBoss social group is created. 2. When a user is added to a group from the Group Management page in our plugin, the user is added to the associated BuddyBoss group. If the user is a student they are added as a “Member”. If the user is a Group Leader they are added as an “Organizer”. This works for **adding single users**, **adding multiple users** *and* **adding users via CSV import**. 3. When users are removed from a group from the Group Management page, they are removed from the associated BuddyBoss social group. 4. When users are added or removed by an administrator from the LearnDash edit group page, we sync the change to the associated BuddyBoss group. If you use BuddyBoss groups, these changes are probably a very welcome surprise. All of these behaviours are automatic and based on the settings in BuddyBoss only; there are no settings to change in Uncanny Groups to add this support. ## Support for semicolon delimited CSV files For non-English users of our plugin, your Group Leaders can now export CSV files from Excel and have them work without having to change region settings or use something like Google Sheets. (For some regions and languages, Excel automatically exports CSV files with a semicolon delimiter instead of a comma, but previously our [user import](https://www.uncannyowl.com/knowledge-base/group-management-page/#Adding_Users_in_Bulk) only support comma delimiters.) ## Performance improvements for LearnDash Groups One of our developers took his frustrations with [LearnDash](https://www.uncannyowl.com/share/learndash/) performance on sites with a lot of groups and turned it into a new performance tweak. By default, the list of groups in LearnDash LMS > Groups in /wp-admin/ shows a column that includes a count of the number of users, courses, and Group Leaders in a group. On sites with a lot of groups, these lookups can slow down load times to show groups a *lot* and the information isn’t always necessary. We ended up including the option to turn the column on or off if people don’t need it, and by doing that, sites with a lot of groups will see a big performance increase (with the compromise, of course, being that the data is no longer output in the group list). ## Show legacy LearnDash group data In recent versions of our plugin (including this one) we have improved the performance of Uncanny Groups reports and key generation. For ProPanel users, there were a handful of situations where data in our reports would not exactly match ProPanel; this was due to LearnDash storing progress and enrollment data in multiple locations in the database. This was usually corrected by running the Course and Course Access List upgrades from *LearnDash LMS > Settings > Data Upgrades*, but we wanted to provide an option for users to choose the slower (but from sources matching ProPanel) report generation option. [](https://www.uncannyowl.com/wp-content/uploads/2021/02/Legacy_LearnDash_course_data-1.png) ## Uncanny Groups 3.9 updates and fixes Details of all updates are of course in the full [changelog](https://www.uncannyowl.com/knowledge-base/uncanny-learndash-groups-changelog/), but we wanted to draw your attention to a few highlights that you might notice as you use the plugin: 1. LearnDash recently changed how new assignments are named to make them more unique, but this in turn created formatting issues in our Assignments report since we listed the full file name. We have no changed file names to a View link instead. 2. The list of courses on the Group Management page is now ordered alphabetically. 3. Group keys are now deleted when a group is deleted, even if WooCommerce is not active (there were some scenarios where deleted groups might still have orphaned keys stored in the database). **Categories:** LearnDash --- ### [Award historical credits for LearnDash courses](https://www.uncannyowl.com/award-historical-credits-for-learndash-courses/) **Published:** January 13, 2021 **Author:** Ryan Moore **Content:** Our [Uncanny Continuing Education Credits](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) plugin has historically been our least popular plugin and not nearly as capable as some continuing education providers would like. Organizations in this space tend to have very specific requirements and outgrow general-purpose solutions quickly. With the 2 most recent updates to the plugin, however, we have completely transformed what’s possible with our CEU product. The [3.1 release](https://www.uncannyowl.com/award-ceu-credits-for-anything/) added the ability to track credits for anything, even learning activities that were not associated with [LearnDash](https://www.uncannyowl.com/share/learndash/). And with our [Uncanny Automator integration](https://www.uncannyowl.com/award-ceu-credits-for-anything/), we can simplify awarding credits even further, automating credit activity for live events, forum participation, purchases–if it can be captured online, [Automator](https://automatorplugin.com/) can almost certainly link it to credits in this plugin. ## Capture historical completion records There’s always been one big limitation in the Uncanny Continuing Education Credits plugin: it only starts tracking credits for new LearnDash course completions once it’s installed and credits are assigned to the course. For most sites, this meant a disconnect between users that completed courses before plugin installation and users that completed them after setup. In today’s [Uncanny Continuing Education Credits 3.2 release](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), we’re adding a very important new feature: the ability to generate credits for historical course completions. This means WordPress administrators can choose a LearnDash course, click a button, and have credits and completions tracked for users that completed courses before the course was assigned credits. [](https://www.uncannyowl.com/wp-content/uploads/2021/01/Generate_Continuing_Education_Credits_for_LearnDash.png) Here’s how the new feature works: 1. Edit a LearnDash course and make sure it has the credit value assigned that you want to award to students. 2. Navigate to **Uncanny CEUs > Generate CEUs** in /wp-admin/. 3. Choose a course from the drop-down list. 4. Click the **Add missing records** button and credits will be added to student records. There are a few important things to note when using this new tool: - Credits are only awarded for students that have a LearnDash completion record but no credits for that completion. It will *not* modify CEU values for existing users that already have credits assigned. In other words, if a course had a credit value of 2.0 assigned, a user completed the course and earned 2 credits, then you change the value to 3.0 and run the *Generate CEUs* function, the student will continue to have 2.0 earned credits, *not* 3.0. - Only courses with a credit value greater than 0 can be awarded credits. If you don’t see a course in the drop-down list, make sure it has credits assigned. - The batch generation of credits does not consider enrollment. This means that if the user has a historical completion but no credit, we will award credits even if the user no longer has access to the course. We’re really excited to get this feature out and into the hands of our plugin users. We know that not having this feature limited the utility of this plugin, and between this update, full Uncanny Automator support and support for manually adding credits, the Uncanny Continuing Education 3.2 really is the most powerful continuing education product for WordPress. Version 3.2 also adds some other important improvements and fixes. Check out [the changelog](https://www.uncannyowl.com/knowledge-base/continuing-education-credits-changelog/) for the full list. **Categories:** Continuing Education, LearnDash --- ### [Single Page LearnDash Courses now available](https://www.uncannyowl.com/single-page-learndash-courses-now-available/) **Published:** January 4, 2021 **Author:** Ryan Moore **Content:** [LearnDash](https://www.uncannyowl.com/share/learndash/) course structures have always been very straightforward and rigid, which did limit flexibility but also made building courses more consistent. Courses must have lessons, and lessons can optionally have topics. The 3-level hierarchy evolved a bit when LearnDash added sections to organize things, but progress was always based around the completion of lessons and topics. For many users, this was good enough. For years we heard from people that didn’t want to use lessons. Maybe they used micro-learning or all course content was self-contained in a single video; splitting the content up into lessons just didn’t make sense. We largely pushed back on such requests because they didn’t fit the “LearnDash model”, but after building a solution for a consulting client we started wondering what might be possible with a public plugin. ## The Single Page Course module In today’s [Uncanny Toolkit Pro for LearnDash](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) 3.6 release, we’re adding a brand new module that addresses this gap: the Single Page Course module. When enabled, it gives course creators the ability to create LearnDash courses *that don’t have any lessons*. It **adds a Mark Complete button to the course level** and enables course structures that are simply just that page. Here’s how it works behind the scenes: When an administrator flags that a LearnDash course is a “Single Page Course”, our module creates a hidden lesson that’s associated with the course. In the front end, we hide the lesson table and course navigation widget, and even exclude the lesson listing from our Course Dashboard shortcode, so students won’t even know it exists. Admins won’t either; it doesn’t show up as being associated with the course. It’s simply a hidden lesson for the course that allows us to use the normal LearnDash progress and completion controls from the course level. [](https://www.uncannyowl.com/wp-content/uploads/2020/12/LearnDash_Single_Page_Course.png) If the “Single Page Course” flag is removed from a course, the hidden lesson gets removed and it can become a normal course. Note that existing courses with lessons *cannot* be turned into Single Page Courses unless the existing lessons are removed first. The new module also includes an option to autocomplete the course when the page is visited by an enrolled user. If you associate a certificate with the course, remember that you will need to refresh the page to see the certificate (the completion happens and the certificate would get generated after the page load). Visitor and Student LearnDash shortcodes work as expected with the new module, as do all other behaviours you would normally expect for LearnDash course access. Perhaps one of the more compelling uses of this module will be with Storyline, H5P, iSpring and Rise assets, so look for support from [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) in an upcoming release. (We need to add support to the completion condition options in that plugin before they can work at the course level.) ## Other updates in Toolkit Pro 3.6 We’re pleased to add support for [Elearning Complete’s Certificate Tracker for LearnDash](https://elearningcomplete.com/certificate-tracker-for-learndash/). Thanks Ryk and Patrick! This means that certificate data created by that plugin can now be included in [certificates that Toolkit Pro sends by email](https://www.uncannyowl.com/knowledge-base/send-course-certificates-email/). Our [Course Dashboard](https://www.uncannyowl.com/knowledge-base/learndash-course-dashboard/) shortcode also gains support for [LearnDash Sections](https://www.learndash.com/support/docs/guides/course-sections/). This allows easier organization of course content within the dashboard output. The [Autocomplete Lessons & Topics on Gravity Forms Submission](https://www.uncannyowl.com/knowledge-base/gravity-forms-auto-completes-lessons-topics/), [Simple Course Timer](https://www.uncannyowl.com/knowledge-base/simple-course-timer/), [Import Users](https://www.uncannyowl.com/knowledge-base/import-learndash-users/) and [Group Forums with bbPress](https://www.uncannyowl.com/knowledge-base/learndash-group-forums-with-bbpress/) modules also get some fixes in this release; make sure to check out the changelog at for full details. **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [Front End Login Changes in Toolkit](https://www.uncannyowl.com/front-end-login-changes-in-toolkit/) **Published:** January 4, 2021 **Author:** Ryan Moore **Content:** We’re excited to announce that today’s [Uncanny Toolkit for LearnDash](https://wordpress.org/plugins/uncanny-learndash-toolkit/) release includes some pretty big Front End Login changes (and we wanted to beat the upcoming [Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) and [Automator 2.10](https://automatorplugin.com/) that announcements that will steal the thunder!). The [Front End Login](https://www.uncannyowl.com/knowledge-base/front-end-login/) module has gotten increasingly capable, to the point that we see people using it on WordPress sites even if they’re not using [LearnDash](https://www.uncannyowl.com/share/learndash/). Today’s release adds even more reasons to use it for login on *any* WordPress site. ## Changes to user verification We added the ability to [verify users](https://www.uncannyowl.com/knowledge-base/front-end-login/#Settings) before login was allowed a very long time ago, but the module never had a great way to manage email notifications when users were approved for access. With user verification enabled, site users would have to be approved by an administrator before they could sign in, but how would the admin control the user notification and content? The Uncanny Toolkit 3.4.1 release adds a new customizable email system (see below) as well as an easy way to suppress user verification emails entirely. Emails can also now include tokens (variables) with information that might be useful to approved users, like site name and the user’s name. [](https://www.uncannyowl.com/wp-content/uploads/2021/01/Front_End_Login_User_Verification_Settings.png) ## Login redirect changes Ever wish users could sign in using a modal and the page would just update for the user without redirecting the user somewhere else? It’s been a common request, so the new 3.4.1 release adds the ability to *ignore* other login redirect behaviours when the modal option for login is used. In other words, maybe you have a dedicated login page on your site and you want users that sign in from that page to land on a student dashboard when they sign in. But maybe on a sales page for members you want them to sign in and *stay on that page*, only with the right content for the user once signed in. Now you can do that; here’s how: [](https://www.uncannyowl.com/wp-content/uploads/2021/01/Front_End_Login_ignore_redirect-1.png) Still not enough flexibility for login behaviours? Now there’s a new filter that allows developers to make even more overrides; here’s what’s now included: ``` $login_form_args = apply_filters('uo_frontend_login_args', $login_form_args); ``` ## Other changes The 3.4.1 release includes a few other changes for Front End Login and other modules. We added the ability for other plugins to show error messages related to login in our Front End Login form. This came up as part of an investigation into why [Peepso](https://www.peepso.com/) was blocking logins with our plugin that we traced to a password security parameter in its settings (which was throwing an error, we just weren’t outputting it). The module also includes better support for /wp-login.php redirects. Previously, attempts to visit that page would be redirected to whatever was set as the login page using this module. While it worked without issue, our redirect dropped any querystring records from the URL when it redirected users; now the full URLs are preserved. Those are the Toolkit 3.4.1 highlights, but make sure to check out the [changelog](https://www.uncannyowl.com/knowledge-base/learndash-toolkit-changelog/) to get the full list of updates. **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [Award CEU credits for anything!](https://www.uncannyowl.com/award-ceu-credits-for-anything/) **Published:** December 17, 2020 **Author:** Ryan Moore **Content:** Today’s 3.1 release of the [Uncanny Continuing Education Credits plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/) is probably our biggest change to that plugin in the past year. It adds a number of changes based around this concept: credits can be awarded for *anything*. Yes, it is still a LearnDash plugin and does still require LearnDash. Credits are no longer tied to LearnDash courses, however. Admins can now add and remove credits for anything they want—that might be a classroom training session, attending a virtual event, completing third-party training, etc. There are no limits to how this might be used. ## Add and delete continuing education credits Here’s what users will now see when adding credits from the [Credits Report](https://www.uncannyowl.com/knowledge-base/continuing-education-report/): [](https://www.uncannyowl.com/wp-content/uploads/2020/12/Course_Report_Add_CEUs.png) From this page, you can choose a user to assign credits to, the number of credits, the date and time for the credits, and whether or not the credits are for a LearnDash course. If they are, you can choose to mark the course as completed when you assign the credits. If the credits are *not* for a LearnDash course, you can assign a label to the credits so they’re easy to identify in reports. (For LearnDash courses, the title is automatically the course name.) Deleting credits is easy too, just selected credit entries in the report and click the **Delete credits** button. ## Uncanny Automator integration We added preliminary support for [Uncanny Automator](https://automatorplugin.com/) in the previous release of the Continuing Education Credits plugin, but with the new changes to support adding and removing credits the opportunities have really expanded. These 2 major changes, support for adding and removing *any* credit types plus Uncanny Automator integration, really move this plugin beyond LearnDash. Credits can now be triggered by submitting a form, earning a badge, making a donation, attending a live event, or really anything else at all that you can think of. And with Automator recipes, all of this happens automatically, no development or manual intervention is required. [](https://www.uncannyowl.com/wp-content/uploads/2020/12/Uncanny_CEUs_and_Automator.png) The screenshot above shows what this looks like in practice. Yes, this means you can award credits for anything in [LearnDash](https://www.uncannyowl.com/share/learndash) too: passing a quiz, completing a lesson, submitting an assignment and more. Another interesting thing in the release is that the new custom credits, and credits awarded by Automat recipes, can trigger our [multi-course and multi-credit certificates](https://www.uncannyowl.com/knowledge-base/continuing-education-certificates/). ## Other updates This release probably gives you an idea of where we’re headed with this plugin and all of the exciting things that will be possible. It’s also an important release because it fixes an issue with changes to LearnDash PDF generation and it improves compatibility with the latest WordPress versions. For those reasons, this update is strongly recommended for all users of our plugin. Do you have some interesting use cases for how you’ll connect Automator recipes to continuing education credits? Let us know in the comments! **Categories:** LearnDash --- ### [7 Principles of Good Feedback in eLearning](https://www.uncannyowl.com/7-principles-good-feedback-elearning/) **Published:** June 13, 2016 **Author:** yuehchin **Content:** [](https://www.uncannyowl.com/wp-content/uploads/2016/06/elearning-feedback.jpg)Every teacher knows that it’s important to provide students with regular feedback during their learning process. Without feedback, your learners simply don’t know how well they are doing. In self-paced online learning, how do you gauge the learners’ progress when there is no instructor to provide feedback and guide their learning? Nicol and Macfarlane‐Dick (2006)1 identified seven principles of good feedback practice. In this post, we’ll discuss how you can incorporate feedback—in particular, how to apply these principles—in self-paced online learning. 1. ### Good feedback helps clarify what good performance is **What’s been done:** An approach that has proved particularly effective in clarifying performance goals and standards is to model exemplary performance. Without concrete, worked examples, concepts are just abstract ideas. In self-paced online learning, this can be achieved with case studies in which learners can identify good performance in the presented scenario. **What you can do:** When designing a case scenario, consider breaking it into multiple parts. After presenting a case, ask the learner what they would do in that scenario—this could be done with a multiple-choice question with possible reactions. Reveal the answer only after the learner has given it some thought. Your answer will be more meaningful if they interact with the material first. **WordPress Tips:** Quiz tools in [LearnDash](https://www.uncannyowl.com/share/learndash/) and other LMS plugins can be disruptive to learning for short reflective assessments; try an H5P module instead, which can be embedded directly into the lesson page. 2. ### Good feedback facilitates the development of self-reflection in learning **What’s been done:** Provide opportunities for learners to ask “where am I now?” In self-paced online learning, this is especially important if your course is broken down into many lessons, and the learner has the option to take them in any order. **What you can do:** At the end of each lesson, consider providing the learner with a concept map showing them where they are in the course. If possible, tie it with the lessons that the learner has completed to show connections. This gives them an opportunity to do a self-check before they move on to a new lesson. 3. ### Good feedback delivers high quality information to students about their learning **What’s been done:** Good feedback is personalized, specific to the individual learners. This can be done with a self-assessment, which may include multiple-choice, true/false, or short-answer questions with feedback tied to the lesson or topic that the learner just completed. This helps the learner self-evaluate whether they have a good grasp of the material. **What you can do:** Consider including customized feedback that helps the learner adjust their learning. For example, you may suggest that they review the lesson (or certain sections of it) if they answer most of the self-assessment questions wrong. You may provide more feedback if a key question that is directly linked to a performance goal is answered incorrectly. **WordPress Tips:** Conditional feedback can be difficult in WordPress, but most quiz tools support feedback or graduation text that can be used to provide insight and recommendations based on learner answers (or use something that supports conditional feedback, like Gravity Forms). For personalized feedback, we like using the \[usermeta\] shortcode on LearnDash platforms to address the learner by name wherever possible. 4. ### Good feedback encourages teacher and peer dialogue around learning **What’s been done:** One way of increasing the likelihood that your feedback will be taken in by the learners is to frame it more as dialogue rather than as instruction. This can be done with a few follow-up questions at the end of a lesson that ask the learner how they might apply what they learned in a context that’s directly relevant to them. **What you can do:** In self-paced online learning, if there is a blog or forum associated with your course, consider encouraging the learner to discuss your follow-up questions with their peers. This can be very effective when the feedback is highly contextual. Using feedback to generate discussions also encourages communities of practice in which learners who share common interests can learn from and support one another. **WordPress Tips:** [bbPress](https://en-ca.wordpress.org/plugins/bbpress/) is a great way to incorporate a simple forum and you can link to specific threads inside LearnDash lessons and topics. Be aware that taking users to a forum removes them from the course context, so make sure it’s easy for users to navigate back to where they were (like with the Resume button in our Toolkit, or easy access to a dashboard page). 5. ### Good feedback increases students’ motivation to learn **What’s been done:** As mentioned above, feedback can be embedded in a series of “check your understanding” review questions. The bite-size evaluation allows your learners to grasp concepts in smaller, manageable chunks, leveraging each step of their learning as building blocks. **What you can do:** “Drop-out” caused by low motivation is often considered the biggest challenge in online learning. Bite-size learning with self-assessment allows your learner to celebrate their progress. Success breeds success—the gradual approach helps to build up the learner’s confidence and increase their motivation to learn. You may also consider using badges to reward the learner’s milestone achievements. **WordPress Tips:** For next-level automated engagement, one intervention we really like is hooking LearnDash activities into [Active Campaign](https://www.activecampaign.com/?_r=F4147AIM), a powerful but inexpensive Marketing Automation tool. It’s not just for marketing—it’s a very effective way of keeping learners engaged by sending communications based on their learning activities. (At the time of writing, our [Active Campaign](https://www.activecampaign.com/?_r=F4147AIM) integration for LearnDash isn’t available to the public but can be added to client sites.) 6. ### Good feedback provides opportunities to close the gap between current and desired performance **What’s been done:** The end goal of providing feedback is to help learners achieve mastery and improve performance. Self-assessment at the end of a lesson can mimic the same ‘task-feedback-performance’ cycle. **What you can do:** Your feedback should help the learner recognize the next steps in learning and how to take them. It can also show how the gap between their current and desired performance is shortened each step of the way. 7. ### Good feedback provides information to teachers that can be used to help shape teaching **What’s been done:** Self-assessment is often not evaluated. However, there is significant learning data that can be extracted from these assessments to guide the student’s learning path. Their learning becomes more relevant and meaningful which, in turn, will further increase their motivation to learn. **What you can do:** Take advantage of the user progress reports that your LMS generates to better understand where your learners are. The data can help you assess the average performance of the class, and identify who may need more attention. It can also help you make improvements to your course that will benefit future learners. **WordPress Tips:** We know that progress over time can be difficult to track with WordPress LMS plugins. Running reports at defined periods and then comparing them can help; report customization is also an option. In self-paced online learning, students are already assessing their own work and generating their own feedback. Well-designed feedback creates individualized learning experience that will result in more satisfied learners. 1 *Nicol, D. J., & Macfarlane-Dick, D. (2006). Formative assessment and self‐regulated learning: A model and seven principles of good feedback practice. *Studies in Higher Education, 31*(2), 199-218.* **Categories:** Best Practices, eLearning --- ### [The Uncanny LP Beta is Ending!](https://www.uncannyowl.com/the-uncanny-lp-beta-is-ending/) **Published:** September 14, 2017 **Author:** Ryan Moore **Content:** Here’s something our clients and followers may not know: we’ve been running a beta for a secret [LearnDash](https://www.uncannyowl.com/share/learndash/) hosted platform for the last month. We didn’t want to attract too much attention while we were testing it, but for some of our dedicated followers and a few very determined searchers, they’ve had a month to explore [Uncanny LP](https://uncannylp.com) (Learning Platform). Uncanny LP is our easy-to-use, complete LearnDash platform that will make launching and managing a WordPress LMS a lot more accessible to everyone. **The Uncanny LP beta will be closing on Sunday, September 17, so that we can officially launch LP on Monday, September 18. There are [3 spots left in the beta](https://www.uncannyowl.com/downloads/uncanny-wordpress-learndash-learning-platform/) at the time of this posting to lock in LP permanently at the discounted beta price. This is the only launch discount we will be offering.** To find out more about the platform, visit . We’ll talk a lot more about LP and how it can be used after launch, but at a high level it lets anyone deploy a polished WordPress elearning platform in 24 hours at very low cost. It supports elearning (with LearnDash, of course), ecommerce, event management, gamification, social sharing and more, plus it includes all of our plugins. There are dozens of hours of screencasts and lots of documentation; combined with a simple admin interface, our goal is to really reduce the learning curve for setting up and managing a LearnDash site. [](https://www.uncannyowl.com/wp-content/uploads/2017/09/LearnDash_LP_Welcome.png) Beta results have been positive so far and we’re excited to start promoting the live version of the platform next week. Interestingly, we’ve had the most inquiries about LP from agencies and designers that want multiple LP sites that they can deploy quickly for their clients. The platform will really help individuals, developers and agencies focus on building out great designs and content rather than spending weeks and countless thousands of dollars on the platform. **No beta discounts will be offered after 9 PM Eastern on September 17. There are also only 3 beta spots left, so if you want to sign up, we encourage you to do so as soon as possible by [clicking here](https://www.uncannyowl.com/downloads/uncanny-wordpress-learndash-learning-platform/). The beta will be closed early if the 3 spots are purchased before Sunday.** **Categories:** LearnDash, Uncanny LP --- ### [New to WordPress? Start Here](https://www.uncannyowl.com/new-to-wordpress-start-here/) **Published:** January 26, 2016 **Author:** Ryan Moore **Content:** We love helping people discover WordPress and use it in creative ways. In fact, its one of the things that sets us apart in the [LearnDash](https://www.uncannyowl.com/share/learndash/) consulting space—we’re educators first, developers second. Every project we work on puts heavy emphasis on training clients to use their platforms effectively and delivering a great learning experience to users. We spend a lot of time teaching people to use WordPress and we’re always looking for better ways to deliver WordPress training. That’s why we were very excited to partner with Mike Brown of [TheBloggingBuddha](https://thebloggingbuddha.com/) to create an easier way to help beginners learn WordPress. What really sets TheBloggingBuddha apart is that it’s very simple, it’s comprehensive, and it’s **free**. An account is only needed to track progress and issue rewards. TheBloggingBuddha walks new WordPress users through the entire website creation process, from buying a domain and hosting to setting up pages, posts and plugins in WordPress. By the end of the [WordPress Orientation](https://thebloggingbuddha.com/courses/wordpress-blog-orientation/) course, learners will have a fully-functional blog up and running; and best of all, they’ll understand how to use and maintain it. Here’s a video that explains TheBloggingBuddha: https://www.youtube.com/watch?v=xuBgoo401rU TheBloggingBuddha website is, of course, powered by LearnDash. That’s why we’re profiling it! The site itself is the result of a collaboration between Mike Brown ([TheBloggingBuddha](https://thebloggingbuddha.com/)), [Bourn Creative](https://www.bourncreative.com/) (site and theme development), and Uncanny Owl (all things LearnDash-related and authoring of the WordPress Orientation course). What visitors to our blog will especially like is that it’s one of very few examples of a robust LearnDash site where all LearnDash courses are available to everyone at no cost. It’s often hard to showcase LearnDash on WordPress sites because the LearnDash content is only available to paid users. With TheBloggingBuddha everything is free—even without an account (users without an account just can’t see videos). For our LearnDash readers, you can jump straight to lessons on [how to start a blog](https://thebloggingbuddha.com/courses/wordpress-blog-orientation/) to see how the course was set up in LearnDash. LearnDash was only lightly styled, and the Course Grid and BadgeOS plugins help to improve the look & feel as well as engagement. We did some development to handle things like a personal greeting, encouraging users to create an account, and redirections, but we really kept plugins and development to a minimum. It’s a great example of what can be done with LearnDash and some very minor customizations. We hope you enjoy [TheBloggingBuddha](https://thebloggingbuddha.com/) and find it useful, both for WordPress training and as a LearnDash showcase! **Categories:** Learning --- ### [LearnDash Groups for Tin Canny](https://www.uncannyowl.com/learndash-groups-tin-canny/) **Published:** February 10, 2017 **Author:** Ryan Moore **Content:** Wednesday’s update to our popular [Tin Canny LearnDash Reporting plugin](https://www.uncannyowl.com/downloads/tin-canny-reporting/), which adds easy [LearnDash](https://www.uncannyowl.com/share/learndash/) and xAPI/Tin Can reporting to WordPress sites, introduced Group Leader access to the Tin Canny reports. With this change, LearnDash Group Leaders now have access to a powerful reporting tool to better understand the learning activities and training records of learners in their groups. Group Leaders can drill down into the courses and users assigned to their LearnDash Groups to see both summary and granular details about the activities of their learners.  As always, Tin Canny remains a *back end* reporting tool, making access consistent with ProPanel and LearnDash Group Leader tools. Access for Group Leaders is automatic; nothing needs to be turned on and Group Leaders can immediately see all existing records. Do note that Group Leaders see *everything* for their assigned groups as consolidated data, so if Group Leaders are assigned to multiple groups, they will see all data together in the LearnDash reports. (Tin Can reports can, as before, be filtered by LearnDash Group.) We’re really excited with this release and it’s a *very* big change that took weeks of development. The new addition is going to make it a lot easier for Group Leaders to gain actionable insights about the activities of their learners. Combined with the SCORM support introduced in version 1.2 (which has seen a lot of positive feedback from users), Tin Canny is perhaps the most comprehensive reporting platform available for elearning in WordPress. Be sure to check out the [Tin Canny Knowledge Base articles](https://www.uncannyowl.com/article-categories/tin-canny-learndash-reporting/), which have already been updated with information about the Group Leader changes. We hope your users find the addition of Group Leader support helpful! **Categories:** LearnDash, Tin Can --- ### [ProPanel 2.0 or Tin Canny for LearnDash Reporting?](https://www.uncannyowl.com/propanel-2-0-tin-canny-learndash-reporting/) **Published:** November 16, 2016 **Author:** Ryan Moore **Content:** Yesterday marked the release of the [ProPanel 2.0 plugin](https://www.learndash.com/introducing-propanel-version-2-0/) for [LearnDash](https://www.uncannyowl.com/share/learndash/), which is a very exciting improvement for LearnDash users. We’re very pleased to see it available and it makes sense to include it on many of the LearnDash sites we support. Now that it is available, we expect to see a lot more questions from LearnDash users about whether it makes sense to use our [Tin Canny LearnDash Reporting](https://www.uncannyowl.com/downloads/tin-canny-reporting/) plugin or ProPanel, so in this post we’ll explain some of the differences and why one and/or the other might be appropriate for your site. [](https://www.uncannyowl.com/wp-content/uploads/2016/11/reporting-widget.gif)ProPanel 20First, the 2 plugins are *not* directly competitive and they serve very different purposes. We fully expect to use both ProPanel 2.0 and the Tin Canny plugin on many of our sites. They actually work quite well together as complementary tools. Our Tin Canny plugin is *purely* a reporting plugin for site administrators (at the moment). ProPanel 2.0 includes an invaluable tool for emailing learners by group and completion status, a learning activity stream, a Group Leader view, and easy access to assignments and essays. Tin Canny doesn’t do any of these things, and we never expect to add anything related to emailing, essays or assignments. If you rely on these things, you’ll want ProPanel. [](https://www.uncannyowl.com/wp-content/uploads/2016/11/tin-canny-view.png) [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/), of course, does some things that ProPanel does not. The obvious, of course, is facilitating the upload and tracking of Tin Can modules, including Storyline, Captivate and H5P content. ProPanel doesn’t consider Tin Can/xAPI activity reporting. Our reporting also looks at activity trends and additional data points like time spent in LearnDash courses, quiz scores, specific activity inside a course, etc. Tin Canny is also going to push server load more, as it looks at a lot of data; it’s not recommended in shared environments where resources are limited, and it will provide the most value to large sites with a lot of users. If price is a consideration, our plugin is significantly more expensive than adding ProPanel. In the end, both plugins can be invaluable additions to LearnDash sites, and choosing one doesn’t mean you can’t also use the other. The combination of both plugins really extends the reporting power of LearnDash. **Categories:** LearnDash, Tin Can --- ### [Slashing LearnDash Consulting Costs](https://www.uncannyowl.com/slashing-learndash-consulting-costs/) **Published:** July 22, 2014 **Author:** Ryan Moore **Content:** [](https://lms.uncannycloud.com)[LearnDash](https://www.uncannyowl.com/share/learndash/) is a great low-budget LMS, but getting it (and WordPress) set up just the right way can be surprisingly time-consuming and complex. More often than not, customizations and complementary tools are needed to deliver the right user experience. For someone jumping into WordPress, an LMS and PHP for the first time, it can all be a bit overwhelming. That’s why so many companies turn to Uncanny Owl, and it’s why LearnDash now represents about 40% of our work. Many people choose LearnDash because of the low price and simplicity compared to other Learning Management Systems. Going from a LearnDash license to a live website requires a lot of work, however, and the $5,000 to $10,000 price for a typical LearnDash implementation with Uncanny Owl was a barrier to many companies. Of course, that’s a small price to pay for the companies that spent months trying to build their own sites before turning to us! With so many LearnDash projects behind us, however, we’ve come to realize that most of our clients want the same things. They want lots of placeholders with lots of content types that they can reuse; they want everything to look pretty and be user-friendly; they want it easy for learners to find and complete lessons; and they want hand-held training so they can be independent without wasting months learning everything themselves. To make a custom LearnDash solution more accessible, Uncanny Owl created a base platform that’s reusable rather than starting from scratch for every client. That means we save days of effort on our side and we can pass those savings on to clients. To make it as easy as possible for anyone to get started with LearnDash, we’re now offering a basic implementation that uses our base platform for just $2,500. It’s designed for businesses that want to get online quickly, don’t have a lot of obscure requirements, are short on time to devote to learning new technology and have to work with a low budget. For these clients, our new offer is probably a great starting point. Keep in mind that we can’t just drop it onto your site; a lot of customization is still required to get things ready for you, and we target a turnaround time of 2 weeks. The new LearnDash demo site is now online at . If you’re just looking for a LearnDash demo to check out, keep in mind that we’ve added a lot of features and customizations to create a platform that delivers what most of our clients need. This isn’t what you should expect out of the box with LearnDash. More details about the offer are on new [LearnDash LMS page](https://www.uncannyowl.com/product/learning-management-system/ "Branded LMS"). It’s brand new, so we’d love to get your feedback about the offer in the comments section below! **Categories:** Learning, News --- ### [Uncanny LP Is Now Available](https://www.uncannyowl.com/uncanny-lp-now-available/) **Published:** September 21, 2017 **Author:** Ryan Moore **Content:** WordPress has become a very strong platform for elearning over the last few years. With such wide use, great elearning tools, flexibility and strong development community, there are a lot of advantages over proprietary Learning Management systems and platforms that only do elearning. There is a tradeoff though: it’s hard to build and support robust elearning sites with WordPress. It typically takes months to get a site off the ground and a skilled developer is needed to do things well. For many people that puts a WordPress elearning platform out of reach—until now. [Uncanny LP](https://uncannylp.com), a hosted platform powered by WordPress and [LearnDash](https://www.uncannyowl.com/share/learndash/), finally makes it possible for businesses to launch polished elearning sites quickly and easily without any development. Uncanny LP includes the basics that every site needs to launch and to deliver an engaging learning experience. From LMS tools and ecommerce to event management and gamification, it’s a complete platform that works seamlessly for everyone wanting a working LearnDash site without the need for an experienced developer. [](https://www.uncannyowl.com/wp-content/uploads/2017/09/LearnDash_LP_Welcome.png) ### What is Uncanny LP? Uncanny LP is a complete learning platform that we built from the ground up to provide what many organizations tell us they want in a WordPress LMS platform. We look after the platform—including maintenance, security, performance, and backups—so you can focus on the design and content. It’s the fastest, safest, and easiest way to build out a LearnDash-powered platform for your business, and it comes ready to go with all of the following: - Strong LMS capabilities powered by [LearnDash](https://www.uncannyowl.com/share/learndash/), the most feature-rich WordPress LMS plugin available. - Support for almost limitless content types, including video, audio, quizzes, tables, Captivate, Storyline, iSpring, Rise, H5P and more. There’s even support for Tin Can (xAPI) and SCORM tracking. You won’t find this level of elearning content support in any other WordPress solution. - Intuitive group and license management. Go B2C or B2B; it’s easy to support both audiences with ecommerce and enterprise features like self-managed groups and front end management reporting. - Certificates, Continuing Education Credits, and badges that make it easy to recognize achievements online and offline. - Event management for live events, including paid tickets and attendee management. - eCommerce that supports one-time payment, subscriptions, coupons and code-based registration. Accept payment with PayPal or Stripe; we also secure your site with SSL - Deep CRM integration and compatibility with Infustionsoft, Active Campaign, Ontraport and more. Sync data from optins, purchases, user profiles, course behaviour and more. - Discussion forums for online collaboration, both public and private. - Great performance on specialized WordPress hosting where security, backups and other admin headaches are taken care of for you. - Extensive documentation and training materials. - Support from a North American team of experienced Learning developers and educators. ### Who is Uncanny LP for? We get a lot of inquiries about custom WordPress elearning platforms but we only work with about 10% of the organizations that reach out to us. Why is it such a small number? Almost without exception, it comes down to cost and timing. LearnDash development can be expensive; our average project budget is over $10,000. Many people not familiar with custom development are sometimes surprised by the cost. Development time can also be unexpected. We typically have a 4 week lead time, and there are a *lot* of people out there that leave LearnDash projects or enhancements to the last possible minute. After the lead time, sites often take 4 to 10 weeks to build. Finding this out left a lot of potential customers very scrambling for a solution—and there really was no alternative for getting a robust LearnDash site up quickly. Uncanny LP addresses that gap. It’s for the thousands of people and small businesses that need a simple, flexible learning platform. Maybe the per user cost of a cloud LMS are prohibitive, or maybe they don’t want separate websites for everything they’re doing. We hear from hundreds of these users every year, in need of a robust solution but overwhelmed by the complexity of building it themselves. These are people that don’t have the budget or time for a full-blown, custom LMS when 90% of their needs aren’t that unique. Until now, these organizations had no easy solution in the marketplace. Here are just a few examples of organizations that would find significant value in Uncanny LP: **The author/keynote speaker** selling video-based training directly to the public. She can turn on the eCommerce, CRM integration and Marketing LP modules and be ready to go. From there it’s just a matter of adding branding and content. **The mid-sized company doing internal training** that needs an easy way to track self-directed compliance programs and CPD/CEU credits. All LP modules can be turned off and the system can be hidden from search engines; LearnDash Groups can be used to track training by department. **The small business offering niche sales training** can turn on eCommerce, events, gamification and marketing modules to coordinated blended learning programs. They might even incorporate interactive Storyline modules and discussion forums to augment their training offer. Selling B2B licenses to organizations is even supported. **The professional coach** might use the event, gamification and marketing modules to offer long-term, facilitated programs to groups of students. Incorporating the CRM integration module allows him to set up campaigns in Infusionsoft to promote automated engagement based on learning activities. **The college professor** can turn on discussion forums and gamification to build supplementary modules that augment the classroom experience and promote more learning opportunities. There are countless scenarios where Uncanny LP will be the right fit for an organization. Some of the best reasons include the following: - Hundreds or thousands of active monthly users means per-user costs with cloud LMS providers are prohibitive - Tight integration of common features that a traditional LMS lacks (like event management and CRM integration) - Time is limited and a robust, secure elearning platform is needed quickly - WordPress seems like the right fit but the site owner is new to WordPress and just needs things to work - The organization doesn’t have a $10,000 plus budget and can accept a platform that does 95% of what they want for a 95% discount Whatever your reason for choosing Uncanny LP, you’ll get a solid, safe platform backed by one of the most experienced LearnDash development agencies out there. ### Get Started with Uncanny LP To learn more about Uncanny LP features and benefits, be sure to check out our new site at . It’s the best way to see how the platform can benefit your organization. [](https://www.uncannyowl.com/wp-content/uploads/2017/09/uncanny-lp-course.png) To better understand how LP works and how to set things up, we’ve made some of the free training available in [our introductory course](https://www.uncannyowl.com/courses/uncanny-lp/). We hope you’ll check it out! There are dozens of screencasts and it’s about a 10-hour training program. To get started with your own Uncanny LP site, [click here](https://www.uncannyowl.com/downloads/uncanny-wordpress-learndash-learning-platform/). You can start using your own LP site as early as tomorrow. **Categories:** LearnDash, Uncanny LP --- ### [Branding for LearnDash Groups](https://www.uncannyowl.com/branding-learndash-groups/) **Published:** August 8, 2016 **Author:** Ryan Moore **Content:** Do you sell courses to organizations? If you do, you probably wish there was an easier way to tailor your course and site branding to your clients without having to use multisite or cloned courses. With today’s release of a new [Pro branding module](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) for LearnDash Groups, you can *easily* deliver organizational branding right inside your existing courses! Our new branding module adds 2 important features to [LearnDash](https://www.uncannyowl.com/share/learndash/) sites: group logos and front-end group lists. After adding a logo to LearnDash groups, just add a shortcode anywhere you want users to see the logo associated with their group. It might be a learner dashboard, a contact page—it could even be in the header of your site. How much would your clients like their users to see branding associated with their organization? It’s completely dynamic, so users will only see the logo for the group they’re a member of. If you use our [Group Registration module](https://www.uncannyowl.com/knowledge-base/group-sign-up/), you can even display the logo for the associated group on the user registration page. It helps users validate that they’re on the right page, and it helps your client organizations deliver the right branding for their users—all without multisite. Our [shortcode for group listings](https://www.uncannyowl.com/knowledge-base/ld-group-logo-list/) seems simple at a glance, but it’s actually an *extremely* powerful way to give courses the feeling that they were created just for an organization’s users. What the shortcode does is list the user’s LearnDash Group on the front end. Let’s suppose that a site has 2 users, Ryan in a group called “Uncanny Owl” and Ken in a group called “LearnDash”. Inside one of the course lessons we include the phrase, “At \[uo\_group\_list\], we embrace diversity.” When Ryan views the lesson, he would see “At Uncanny Owl, we embrace diversity.” Ken, on the other hand, would see “At LearnDash, we embrace diversity.” We’re *very* excited about using this new shortcode on client sites to deliver the experience of branded courses without the hard work and complexity that usually goes along with it. **Categories:** eLearning, Uncanny LearnDash Toolkit --- ### [Introducing the Uncanny LearnDash Toolkit Pro Modules](https://www.uncannyowl.com/uncanny-learndash-toolkit-pro/) **Published:** July 18, 2016 **Author:** Ryan Moore **Content:** Earlier this year we released our first public plugin to the WordPress Repository. The [Uncanny LearnDash Toolkit](https://wordpress.org/plugins/uncanny-learndash-toolkit/) has developed a huge following since its release, with over 1,000 active installs and over 4,000 downloads, and we wanted to take that foundation and add a number of new capabilities that would help LearnDash site owners really take their learner experience to the next level. The [Pro set of modules for the Uncanny LearnDash Toolkit](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) is our first paid plugin and represents the culmination of hundreds of hours of internal development time. The new modules are considerably more complex than what’s in the current plugin, but they’re also very powerful and fundamentally change what’s possible with LearnDash sites. Here are the modules included in the initial release of the [Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) plugin (usage instructions are left to our Knowledge Base articles in the links because of module complexity): [Autocomplete Lessons and Topics](https://www.uncannyowl.com/knowledge-base/autocomplete-lessons-topics/): As simple as it sounds, this module marks lessons and topics as completed when the page is visited so learners no longer have to click Mark Complete on lessons and topics. [Simple Course Timer](https://www.uncannyowl.com/knowledge-base/simple-course-timer/): Adds time tracking to LearnDash courses. Both total course time (across course, lesson, topic and quiz post types) and course completion time are recorded as learners complete learning activities. Results are added to LearnDash reports and can be displayed to users via shortcodes. [LearnDash Group Expiration](https://www.uncannyowl.com/knowledge-base/learndash-group-expiration/): Expire course access for LearnDash Groups by calendar date. On a specific date, all courses can be removed from a LearnDash Group (revoking access for associated users), making it easier to sell courses to organizations and remove access automatically. [Enhanced Course Grid](https://www.uncannyowl.com/knowledge-base/enhanced-course-grid/): This module provides an alternative way to display courses in a grid-based system that’s particularly useful to signed-in users. It’s extremely flexible. [Course Dashboard](https://www.uncannyowl.com/knowledge-base/learndash-course-dashboard/): We took the basics of the ld\_profile shortcode but modified the design (and content) to fit seamlessly into typical landing pages for learners. [Learner Transcript](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/): This report shortcode generates a printable view of user progress across all LearnDash courses. It’s a better way for learners to share their accomplishments offline and with other parties. [Duplicate Pages and Posts](https://www.uncannyowl.com/knowledge-base/duplicate-pages-posts/): A simple module that clones LearnDash post types, but with proper support for quizzes and quiz questions. With this module you can skip the export/import quiz steps normally recommended. [Days Until Course Expiry](https://www.uncannyowl.com/knowledge-base/days-until-course-expiry/): Show learners the number of days until access expires (rather than the calendar date available with LearnDash). [Drip Lessons by LearnDash Group](https://www.uncannyowl.com/knowledge-base/drip-lessons-by-ldgroup/): Set specific drip dates for every LearnDash group instead of every group being bound to the same dates. [LearnDash Table Colors](https://www.uncannyowl.com/knowledge-base/learndash-table-colors/): Adds a simple way to restyle LearnDash course, lesson, quiz and dashboard tables by changing the colors of the header background and text. [LearnDash Group Registration](https://www.uncannyowl.com/knowledge-base/group-group-registration/): Adds a front-end registration function for adding users to both WordPress and LearnDash Groups at the same time. It even supports users switching groups or adding additional groups to a user from the front end. Gravity Forms or Theme My Login are recommended for this module but not required. The Pro plugin requires PHP 5.3 or higher, [LearnDash](https://www.uncannyowl.com/share/learndash/) 2.1 or higher, and the [Uncanny LearnDash Toolkit](https://wordpress.org/plugins/uncanny-learndash-toolkit/) version 1.3 or higher. These 3 things are really important, so please make sure your site is updated before you purchase and install the Pro modules! Some of the new modules are reasonably complex, and it’s very important that you read the Knowledge Base articles and watch the screencasts before you start using the plugin. If you do run into any problems or questions, send us a note! We hope you like the new Pro modules and that they help to improve your LearnDash sites! ### [Uncanny LearnDash Toolkit Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) - 1 Year License – $149.00 - 1 Year Business License – $249.00 - 1 Year Unlimited License – $449.00 - 1 Year License – $199.00 - 1 Year Business License – $349.00 - 1 Year Unlimited License – $499.00 - 1 Year Agency License – 50 sites – $499.00 BUY NOW [Checkout](https://www.uncannyowl.com/checkout/) Added to cart **Categories:** Best Practices, eLearning, Uncanny LearnDash Toolkit --- ### [Great LearnDash Plugins You Don't Know About](https://www.uncannyowl.com/great-learndash-plugins-you-dont-know-about/) **Published:** September 30, 2016 **Author:** Ryan Moore **Content:** [LearnDash](https://www.uncannyowl.com/share/learndash/) users are fortunate to have dozens of plugins available that extend its functionality and make it easy to integrate with other plugins and apps. Some of those plugins enjoy very wide recognition, including our own [useful LearnDash plugins](https://www.uncannyowl.com/plugins/) (our [free LearnDash Toolkit](https://wordpress.org/plugins/uncanny-learndash-toolkit/) is now installed on over 7,000 LearnDash sites and is the most installed LearnDash plugin in the WordPress repository). Other plugins are [showcased on the LearnDash site](https://www.learndash.com/extensions/), but there are many others still flying under the radar. We want to introduce a few of them to you in this article. ### WP Fusion We love it when LearnDash clients incorporate marketing automation tools into the delivery of their elearning programs to make them more engaging and improve learning outcomes. Historically this was the realm of Memberium and Infusionsoft, and while both tools work reasonably well, as developers we were never particularly fond of using either (and invariably ran into complications setting them up for clients). We much prefer using [Active Campaign](/share/activecampaign) for simple marketing automation (it’s what we use ourselves) and [WP Fusion](/share/wpfusion) does a great job of integrating LearnDash with Active Campaign. We’re so pleased with it, in fact, that we’d actually built a competitive plugin and abandoned that work after we discovered and started using WP Fusion. The code is not obfuscated and doesn’t have special server requirements (unlike Memberium) so it’s easier to work with. Moreover, Jack, the developer, has been very receptive to feedback and has added features we’ve requested, like the recent addition of tags for LearnDash groups. ### Learning Templates Dennis at [Learning Templates](https://learning-templates.com/) has created some very compelling LearnDash plugins for LearnDash Groups, including an assignment gallery and a plugin that isolates comments on LearnDash posts to a user’s LearnDash Group. While we haven’t used the plugins on any of our client sites yet, they address some gaps in LearnDash Groups that we’ve also experienced and it’s great to see another Canadian company doing LearnDash development. ### LearnDash Topic Progression Using Storyline/Captivate Chris over at [Discover eLearning](https://www.discoverelearninguk.com/) released [a plugin](https://wordpress.org/plugins/learndash-topic-progression-using-storyline-or-captivate/) that makes it a lot easier to integrate Articulate Storyline and Adobe Captivate files into courses by building a clever solution to have Storyline and Captivate modules control the LearnDash Mark Complete button. Our [Tin Canny Reporting plugin](https://www.uncannyowl.com/downloads/tin-canny-reporting/) does this as well, but for simple integration with Storyline and Captivate, the Discover eLearning plugin can’t be beat—and it’s free! Do you have any favourite public plugins for LearnDash that didn’t make the LearnDash extensions page or our list here? Tell us about them in the comments! **Categories:** LearnDash --- ### [Import LearnDash Users](https://www.uncannyowl.com/import-learndash-users/) **Published:** March 13, 2017 **Author:** Ryan Moore **Content:** The [Uncanny LearnDash Toolkit](https://wordpress.org/plugins/uncanny-learndash-toolkit/) is now trusted on our 4,000 [LearnDash](https://www.uncannyowl.com/share/learndash/) sites to improve the learner experience and make things easier for site admins. It is by far the most popular free LearnDash plugin in the WordPress repository, and our [Pro modules add-on](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) continues to bring new improvements and capabilities to LearnDash sites. Today we’re very pleased to introduce version 2.0 of both the Toolkit and Pro modules. The free Toolkit makes configuration activities less confusing, and the Pro plugin adds one of our biggest module additions ever: the ability to import users via CSV file and add them directly to LearnDash courses and groups. If you’re asking yourself why that might be needed when there are several plugins that support importing users via CSV and adding them to groups by including usermeta values, once you see our module it will be very clear how much safer and more efficient our approach is.  The new [Import LearnDash Users](https://www.uncannyowl.com/knowledge-base/import-learndash-users/) module, available today to all Pro plugin users at no extra cost, gives you an easy-to-use interface to choose which courses and groups to add users to. It allows custom (and optional) notification emails with lots of variables to make sure learners get the right messaging to start using your site. It adds group and course enrolment in a *safe* way that doesn’t risk what we call “ghost groups” with regular CSV import plugins (which add extra fields to user profiles which, on save, can incorrectly add users to groups they’re not supposed to be in). It includes extremely thorough validation steps so you know exactly what will happen on import, and then it allows you to correct your files before they’re uploaded and add unexpected data to the system. Following import, it confirms exactly what actions were taken, so you’re never guessing about what succeeded and what didn’t. It’s a long video, but we encourage you to skim through the screencast below so you can see just how powerful and useful the [Import LearnDash Users](https://www.uncannyowl.com/knowledge-base/import-learndash-users/) module can be. This plugin isn’t just for adding new users to LearnDash courses and groups. It can be used as a general user import tool if you exclude LearnDash column headings. It can also be used to update user profiles or add new groups and courses to a list of users, so if you have a list of users you want to add to a new group, it’s easy to do that without affecting their existing course and group enrolment.  As with many of our plugins, this is a powerful and complex tool, so we strongly encourage you to read the [Knowledge Base article](https://www.uncannyowl.com/knowledge-base/import-learndash-users/) and the instructions in the tool before you upload your first CSV file. We hope you find this new addition to the Pro modules as helpful as we do! Let us know your comments and suggestions below. **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [Updates? We’ve Got Updates!](https://www.uncannyowl.com/updates-weve-got-updates/) **Published:** November 21, 2017 **Author:** Ryan Moore **Content:** It’s been a very busy 2 weeks in the [LearnDash](https://www.uncannyowl.com/share/learndash/) world. [Version 2.5 of LearnDash](https://www.learndash.com/online-course-creation-has-just-evolved/) was released on November 7, bringing long-awaited features like a visual course builder and the ability to include lessons and topics in multiple courses. The latter is a fundamental change to how courses can be organized and developed. For LearnDash users, the changes bring welcome new features and far more flexible ways to author courses. And for plugin developers like us, we have to rethink how course relationships work and find new solutions when there are significant architectural changes to the plugins we depend on. For the last 2 weeks we’ve been working tirelessly to add proper support for LearnDash 2.5 to our plugins. This wasn’t always easy, as LearnDash changed how lessons, topics and quizzes mapped to courses—and with plugins as big and as complex as ours, we have a lot of code that has to look up course relationships, labels, and more. [](https://www.uncannyowl.com/wp-content/uploads/2017/11/toolkit-ratings.png)We released a significant update to the [Uncanny LearnDash Toolkit](https://wordpress.org/plugins/uncanny-learndash-toolkit/) 2 weeks ago that addressed several 2.5 related issues and also added a simple new module for easy [User Switching](https://www.uncannyowl.com/knowledge-base/user-switching-module/). That plugin has now crossed the 8,000 active installs barrier (yay!) and no issues tied to 2.5 have been reported. (As an aside, with 8,000 installs and only 6 reviews, I think we may have one of the lowest review to install ratios in WordPress; if you use the plugin, [don’t forget to leave your review](https://wordpress.org/support/plugin/uncanny-learndash-toolkit/reviews/)!) Last Wednesday we released a big update to [Pro](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/), addressing multiple 2.5 issues (with the timer, course expiry, group drip and autocompletion) and we added a completely new way to track time for courses. It’s still in beta, so we suggest testing it on Staging sites first, but it’s a more efficient way of recording time and can potentially reduce the resources used by our old timer by 80%. On less powerful sites where resources were already being pushed, we do suggest giving the new tracking method a try. And because it’s lighter, we do now allow a polling interval down to the 5 second level for increased accuracy (the previous limit was 10). [](https://www.uncannyowl.com/wp-content/uploads/2017/11/beta-learndash-timer-1.png) The update to our [LearnDash Groups plugin](https://www.uncannyowl.com/downloads/uncanny-learndash-groups/) was released on Thursday. It’s less related to 2.5 but covers a *lot* of fixes to our Groups plugin. It’s still our newest plugin and it receives the most feedback and suggestions for improvement, so if you use Groups, you should absolutely update. There are a lot of improvements. The [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) update with LearnDash 2.5 fixes was released earlier today. We had a lot of complications with this one to make sure course attributions were correct with the 2.5 changes, so it unfortunately took the longest to release. That’s it! Those were a lot of plugin updates for us in a short span. Let us know if you do notice any new issues related to LearnDash 2.5 and we’ll happily take a look. **Categories:** LearnDash, Tin Can, Uncanny LearnDash Toolkit --- ### [New Course Certificates and Lesson/Topic Grids!](https://www.uncannyowl.com/new-course-certificates-lesson-topic-grids/) **Published:** June 23, 2017 **Author:** Ryan Moore **Content:** As we head into the 1-year anniversary of our [Pro plugin](https://www.uncannyowl.com/downloads/uncanny-learndash-toolkit-pro/) for the [Uncanny LearnDash Toolkit](https://wordpress.org/plugins/uncanny-learndash-toolkit/), our most popular product, we’re excited to announce 3 new features that will make life easier for many [LearnDash](https://www.uncannyowl.com/share/learndash/) admins! Today’s 2.1 release, available to all new and existing Pro users, adds the ability to send course certificates as PDF files on course completion, a new grid option for lessons and topics, and a new attribute that makes our dashboard module a lot more flexible. ### Send Course Certificates by Email We’ve supported sending LearnDash certificates as PDF files with quizzes for a long time, but the ability to send **course** certificates to learners, Group Leaders, administrators and other users was a gap. In this release we’re adding support for emailing those certificates, which are triggered on course completion and sent exactly as quiz certificates would be.  The functionality is largely the same as the quiz certificates function but this is set up as its own module. It can be used with or without the quiz certificate emails; there are no dependencies. For easier retrieval of certificates, you can save the files to your web server and we’re including the user’s email address in the file name. (You could also retrieve them from a user’s profile with LearnDash, of course, but this makes it easier to manage large sets of certificate files if required.) ### Enhanced Lesson and Topic Grid Our Enhanced Course Grid was one of the earliest modules in the plugin and introduced a very flexible way to organize LearnDash courses into a visual grid. But it only ever supported courses, and on almost all of our sites we were limited to pretty basic tables listing available lessons and topics. We had done some interesting things with CSS to restructure the tables as grids for some clients, but until now we didn’t have a robust grid model for wider use.  This new module effectively brings the basics of the Enhanced Course Grid to lesson and topic tables. Instead of a flat table with text and checkmarks only, you can now show users a highly visual grid format that can incorporate featured images. The module allows control over the use of featured images and the number of columns displayed. For more flexibility, you can either enable these grids globally or add the grid shortcode to specific course or lesson pages on which you want them to appear. You can even use shortcodes for these grids on non-LearnDash pages and posts. ### LearnDash Course Dashboard On several of our client sites we found that we had outgrown the default behaviours of the dashboard shortcode. For one thing, it was useless for signed out users—and we unexpectedly had a few clients want to use it that way. In this iteration of the dashboard shortcode, you can use a new “show” attribute to populate the table with only enrolled courses (which is the current behaviour), all courses (show everything, regardless of enrolment status), and “open”, which we’re using to show open courses to logged-out users (signed in users see enrolled courses). We think these additions will make the shortcode a lot more flexible. We hope you enjoy the updates! **Categories:** LearnDash, Uncanny LearnDash Toolkit --- ### [How to Choose a LearnDash Developer](https://www.uncannyowl.com/choose-learndash-developer/) **Published:** May 5, 2017 **Author:** Ryan Moore **Content:** As [LearnDash developers](https://www.uncannyowl.com/wordpress-lms/) with some visibility in the WordPress LMS community, we get a lot of requests to fix bad projects. It’s so easy for things to go wrong, and selecting the wrong partner can often mean the project is doomed before you even start. In this post we’ll explore the most important things to consider when choosing a developer for any WordPress elearning project. Our expertise is in [LearnDash](https://www.uncannyowl.com/share/learndash/), but all of this applies equally to [LifterLMS](https://lifterlms.com/), [Sensei](https://woocommerce.com/products/sensei/), and any other WordPress LMS plugin that you’re building your platform around. This post isn’t about selling our services; we’re already at capacity and have unfortunately had to stop accepting new clients several times recently. What we want to do with this blog post is raise awareness so that when you are looking for a partner to help build your LearnDash site you better understand how to choose an organization that is competent and will be able to deliver a robust platform that meets your needs. If you’re starting out on your first LearnDash development project, here are some things to consider as you look for a partner: **Start with a conversation**. We really find that emails don’t work well enough to ensure all parties are on the same page and to ask questions easily. It’s great if you can come to that conversation with clear goals and questions. The vendor should have questions too. Relationships are absolutely critical to successful projects and this is where they start. Take notes and be thorough. If you’re comparing vendors, make sure you have a consistent way to assess them and document everything immediately after the conversation. Also be prepared for several conversations; it’s rare that initial discovery and planning can be completed in a single session, unless it’s a very small project.  **Ask if you can see some of the company’s other projects**. Do keep in mind that for LearnDash projects most of the development work tends to be behind registration or a paywall, so the access developers can provide is limited. Again, this is where a call (or preferably web conference) can be very helpful, as on a call the developers can actually sign into sites and show how things are set up or created. Experienced LearnDash experts should have easy access to a variety of representative samples. Ask for some walkthroughs and get more information about what specifically the developers did. Give consideration to what works and what doesn’t, and how similar previous projects might be to your own. Experience is extremely important when setting up intuitive, effective elearning platforms with WordPress. **Check out community feedback**. This can be really hard to find in the LearnDash space, but it’s still important to make an effort and solicit experiences about working with the vendor. Maybe there’s feedback on social media, plugin reviews for things they may have developed, the LearnDash support forums, even reaching out to previous customers. Also look for negative feedback, which can often be more telling than positive comments. **Don’t just look locally**. There are very few WordPress agencies and developers that have a significant amount of LearnDash experience. We’ve seen a lot of projects where businesses chose someone they know who’s done other work for them (LearnDash is just one plugin, right?) but couldn’t transition to considerations like the signed-in experience, student workflow, making things work together, etc. To get the best partner, expand your search range, potentially even to other countries. We’re in Toronto but we have many clients in Australia; it’s not as hard as you might think to make projects like that work. **Get to know who you’ll be working with**. Without question, the #1 reason we’ve taken over several projects from experienced LearnDash developers hasn’t been bad code quality or poor implementation—it’s been a communication breakdown. Communication issues are painfully common with these projects and site owners come to us because they have a site they don’t know how to use, isn’t what they expected or they’re tired of saying the same thing over and over. Whoever is setting up your site is someone you’ll be working with for over at least several weeks, perhaps even several years. There has to be a rapport. There must be trust. And it has to be really easy to communicate and make sure everyone is always working towards the same goals and scope. You don’t want to be talking to 5 different people and for discussions to only happen by email with week-long gaps between them. **Try to assess technical competence and workflow**. While communication issues abound, there are still a lot of developers out there that simply bite off more than they can handle with LearnDash and don’t really know what they’re doing. They might be great people that really want to help, but that doesn’t mean they should be building LearnDash sites. Just last month we took on a site where the developers had made changes to LearnDash core and even WordPress core—and that should never, ever happen. The client, of course, wondered if it was normal for everything to break and have to be fixed on updates (it’s not). So ask LearnDash partners how they work and look out for red flags. How do they implement changes? How do they test updates? How do they work collaboratively? Who’s responsible for testing and validation? How does a project actually come together? If they have public plugins, what are the reviews like and what issues are people having? We have also seen individuals take on projects that were just too big for one person and then, when they’re overwhelmed, they’ve walked away. Try to get a sense of whether or not the developer or development team has the right skill set and/or the right people in place to handle everything that’s needed. **Ask about training and maintenance**. Building a LearnDash site means a lot more than setting up a site and installing some random plugins—yet we see that happen a lot. Your goal also shouldn’t just be to have a site that seems functional at the end; it should be to have a LearnDash site that you understand how to use and leverage to improve your business. When we’re investigating a new site, we almost always have a conversation that goes like this: “Do you know why this is set up this way?” “No.” “Do you have any documentation that might explain it?” “No.” “Is there any way you could find out?” “No.” As a site owner, we understand how scary it can be for you when we ask those questions and you realize you don’t really understand your site. From the beginning you need to make every effort to ensure you’re working with a partner that won’t leave you in that situation. Training and communication throughout a project are absolutely essential. We average creating maybe 4 screencasts per project so that clients always have a point of reference for how things work and why. Find out what your partner’s process is to make sure you’ll be left in a place where you’re comfortable. Also confirm what’s typically required following projects in terms of maintenance and who will be taking care of that. For most projects we are able to hand things off in a way that clients can safely make updates themselves and we’re only needed for answering questions on an ongoing basis—not to keep things up and running. **Don’t be driven just by price**. You will inevitably get what you pay for. We’ve taken on a few projects that we scoped out months or even years previously; the business decided to go with a different vendor that was a lot less expensive, and then they came back to us to fix them, often at a higher price than they would have paid if we’d just done the project originally. Budget is a huge consideration, of course, but it should be carefully balanced against other factors like the competence of the developer, your relationship with them, the developer’s experience in similar projects, etc. **Understand exactly what will happen during the project**. If you start a project, then leave it in the developer’s hands for 2 months and suddenly get an email at the end saying it’s all done, you’re going to end up with a bad site. Take some time to understand what’s going to happen during the project and how collaboration will work. What do you need to provide? What are your responsibilities and what are the developer’s? What are the milestones? To meet the timelines, how do reviews work and how quickly do things need to be turned around from both parties? Are there any dependencies or bigger risks that everyone should be aware of? How will you and the developers keep each other updated and make sure things are progressing as expected? The tips above should go a long way in helping you select and retain a vendor that’s the right fit for your LearnDash project. Sometimes, however, it’s still not enough, and due to unforeseen circumstances projects can still go off track. While this is just a quick list, here are some things you should be doing during the project to encourage positive outcomes: **Be involved**. Some of our worst projects (and yes, we’ve had a few that disappointed both parties) were when clients just dropped communication. They got too busy or had other priorities, or just stopped caring about the site. We’ve had projects delayed 6-12 months because of client delays, and when that happens it inevitably leads to bad outcomes. Objectives get lost, people stop caring as much, the results just aren’t there. The best projects are when everyone is on the same page and working collaboratively at the same time. We’re adding features and testing while the client is adding content and providing feedback. We’re having discussions to address scope creep or new problems. Being active and engaged is one of the best ways to see good results. **Test continuously**. Very recently we took over a project where testing on the site by the client didn’t begin until the day before launch. The site was extremely complex and, of course, everything was broken. That’s when the developer realized they were in over their heads and the client realized they were in an unimaginable amount of trouble. It’s an avoidable situation though. With WordPress LMS sites it’s not like everything is suddenly ready one day; pieces will be finished throughout the project that can be tested independently. Be involved and testing often not only helps identify issues early but it’s a chance to understand your site better and work collaboratively. **Maintain a good relationship**. Yes, even if your developer is doing a terrible job and you’re miserable, try not to throw the entire relationship away if you’re in the middle of development. We’ve seen angry developers lock companies out of their sites. Like it or not, and the legal side can be messy when you’re working with partners in other states or countries, your developer can make things very difficult for you if they host and/or have admin access to your WordPress site. If you need to sever a relationship with a WordPress developer try to gain control of the site before things sour too much. The goal of your LearnDash development project is to always end up with win/win situations for you and your developer. They are possible, and by following some of the guidance in this article we hope you’re able to partner with a great LearnDash development team for your WordPress LMS project. **Categories:** Best Practices, eLearning, LearnDash --- ### [A LearnDash Course Completion Report for Everyone](https://www.uncannyowl.com/simple-public-learndash-course-completion-report/) **Published:** August 19, 2017 **Author:** Ryan Moore **Content:** Have you ever wanted an easy way for learners, managers, parents, administrators, or anyone else to verify course completion records? Especially if they don’t have WordPress accounts? Until recently, there has been no way to make this possible with [LearnDash](https://www.uncannyowl.com/share/learndash/). Administrators and Group Leaders have several options, between LearnDash CSV reports, ProPanel, [Tin Canny](https://www.uncannyowl.com/downloads/tin-canny-reporting/) and other plugins, but access to the data is heavily restricted. We introduced a great way to verify course completions a few weeks ago but we didn’t draw a lot of attention to it. It’s part of our new [Continuing Education Credit plugin](https://www.uncannyowl.com/downloads/uncanny-continuing-education-credits/), and the front end course completion report was one of the features we were most excited about. Even though the name might suggest otherwise, the plugin does *not* require you offer credit for your courses. In fact, it offers several features (multi-course certificates are another) that don’t depend on courses with credits. EVERY LearnDash site stands to benefit from having the plugin. \[et\_bloom\_inline optin\_id=”optin\_2″\] Check out the screenshot below of our course completion report (notice the lack of CEU reporting in this version!). This is in the front end on a regular WordPress page and it can be used by *anyone*, regardless of whether or not the user has an account on the site. (We protect privacy by requiring that at least 3 characters be entered in the search field. Otherwise, it’s wide open for easy reporting.) [](https://www.uncannyowl.com/wp-content/uploads/2017/08/learndash-course-completion-report.png) If you’re familiar with our Continuing Education plugin you may recognize this report—except that it’s missing a column. That’s because it normally includes a column for CEU values, as it was designed as a CEU report. With a tiny code tweak that column can be hidden and it becomes a comprehensive completion report for any LearnDash site! To make the change, simply add this string inside the Text tab of the WordPress editor for the page (instead of just using the shortcode by itself):